まあ、折角なので・・・(何が折角?)
お盆休みの4連休も今日で終わり
前々からやりたかった自作システムの機能追加が2つあって・・・
- exitの半自動注文システム
- 戦略(ルール)は弄らずちょっとだけ変えて複数登録機能
1は出来てて、2がまだでした
1は作って失敗しても捨てればいいので副作用はないのですが・・・
2は失敗すると今までのシステムがおかしくなる可能性もあり、かなり慎重に進めないといけない・・・
で、今朝何とか完成
結構大変だった記念に(何が記念?w)
やる際に作ったメモをそのまま貼ってみる
読者には何意味もないけど・・・・
シグナル出しの調査 SCRのボタンクリック----------------------- ./su/car_all2new 実行で for i in `cat ./all_rule` ../suQ2/carbuy2_all2new $i ../suQ2/carbuy2_all2new #mt_rules.csvの自動処理コマンド作成 cat ./mt_rules_new/mt_rules_new${1}.csv | awk -f ../awk/mt_buymk_allnew.awk > ./mt_rules_buy${1} # ./suQ2/mt_rules_new/mt_rules_new${1}.csv を加工して実行する D 05C_OR_0 7 60 0 0 こういう形式 --------------------------------- buyに印をつけて登録番号をクリック-------------- ./${SQ}/car${choice}2new ${ten}0 ${mod} ${optn} K${optnk} なので /suQ2/carbuy2new 0 cat ./mt_rules_new/mt_rules_new${1}.csv | awk -f ../awk/mt_buymk_new.awk > ./mt_rules_buy${1} ※awk scriptが違う ※理由は登録番号クリックだとその前に何がダンプされたか?がわからないので WYはVで処理することにした -------------------------------- 以上とにかく ・引数は1番目(登録番号)しかみない ・./suQ2/mt_rules_new/mt_rules_new${1}.csv を加工して実行するは同じだが ・加工するawk scriptが違うがとりあえず気にしなくていいかも 今のところ手つかず 次 Mkmtrulesをクリック------------------- ./su/mkmtrules2 cat ./buy.jcl | awk -f ../awk/mt_rules3.awk | tee ./rules_list.txt mt_rules3.awk は作りかけ mt_rules2.awk と比較すること 仕様を決めてmt_rules4.awkを作成すること とりあえずは最後にVfilenameを追加する またVfilenameでない拡張も考える必要あり とりあえずmt_rules4.awk作成 asisではなく Vxxxxと書くとVxxxxを末尾に追加 ここまではOK まだ末尾に追加しただけで何もそれを活用してない まずはedit carEdit2new----------------------- cat ./mt_rules_new/mt_rules_new${1}.csv | awk -f ../awk/mt_Editmk2new.awk OPTN=${3} OPTNK=${4}| bash ./awk/mt_Editmk2new.awk editもOK Vxxxxが書かれているとeditorで開く 次にバックテスト この部分はすべて@@Fix@@にコピーしてコンパイルするのでcar_m4を触る必要はないはず carVgr2newはたぶんできた Vgrは動く 次はgr grは何もしなくてよい自動でcarVgr2newに飛ぶので これでバックテストはすべてOKのはず mt_rules4.awkを完成させること あとはcar_m4を対応させて(car_m4_ bakup済) carbuy[VYW]2を対応させる⇒carbuy[VYW]V2を作る まずはVだけでも car_m4対応ok YWもokのはず Ytest Wtest car_mtはそのままでよかった リコンパイルまではokなのであとはzで実行してvarを取り込むところ(mt_rules4.awk) Vはたぶん終了 あとはYとWを対応させるひつようあり carbuyVV2を参考に carbuy[YW]V2を作ることok 頭に戻って /suQ2/carbuy2new ok suQ2/carbuy2_all2new ok su/output_buy2 ok あとは carbuyVVnewを参考に carbuyVWnew carbuyVYnew を作るだけ ちなみに carbuy[VWY]Vnew AsCMav_0 Vtest2 ^ として呼び出されるので注意 $2のVをWYに替える必要あり awk/mt_buymk_allnew.awkを確認すること 一応完成したと思われる
ややこしい・・・
同じ戦略(ルール)ですが、そのまま(asis)登録できるし ちょっと変えてV(asis)登録もできるし、更にいろいろ変えてVtest Vtest2 登録できる仕組み
シグナル出しはダンプデータを利用すれば3,4秒で出てくるしので実際に運用しなくても登録しとけば毎日シグナルは確認できるし、バックテストは登録番号入力するだけ
この辺の発想は開発と運用を分けるという大型汎用機メインフレームからきてます(触ったことないけど)
まあ、トレードの才能はないけど、この辺の才能は少しはあるかも・・・
今日も暑くなりそうです 死にそう・・・