あれ? MT4 他者インジゲーターの矢印をiCustomを利用すれば数値簡単に取れるんじゃね?問題。
今更気が付いたのこのアホ => そう自分への文句です。
先日バイナリーオプションの無料インジゲータ(谷あきらさんのUSDJPY)をバックテストをした時に私はMT4の実行結果をログから取得して、それをわざわざ精製してrubyでプログラム書いてバックテストの実行結果を得る。方法を行いました。
わざわざDBまで用意してね。
んで本日谷氏の動画を拝見していると自動売買ツールの販売をするとの事で、その動画内の説明に矢印を取得してエントリーさせる方法として矢印にはバッファ型とオブジェクト型の説明がありました。
ここで重要な事を思い出すんです。そーいやバッファの取得は出来るやん。って。
これってzigzagの時にやったやり方と一緒やん。って。
これって値取得出来ればruby使わなくてもMT4だけで解決出来るやん。って。
しかもインジゲータ追加で自動売買も出来るやん。って。
で早速取得High or lowの矢印サインを取得出来るかプログラム書いてみました。
double icustom_test0 = 0; double icustom_test1 = 0; double icustom_test2 = 0; double icustom_test3 = 0; int limit = 2000; for(int i = 0; i < limit; i++) { icustom_test0 = iCustom(NULL,0,"TM_USDJPY",0,i); icustom_test1 = iCustom(NULL,0,"TM_USDJPY",1,i); icustom_test2 = iCustom(NULL,0,"TM_USDJPY",2,i); icustom_test3 = iCustom(NULL,0,"TM_USDJPY",3,i); if (icustom_test0 < 130){ Print("limit" + i," icoustm_0 : " + icustom_test0, " icoustm_1 : " + icustom_test1, " icoustm_2 : " + icustom_test2," icoustm_3 : " + icustom_test3); Print("時間 " + Time[i], " opne: " + Open[i], " close: " + Close[i]); } else if (icustom_test1 < 130 ){ Print("limit" + i," icoustm_0 : " + icustom_test0, " icoustm_1 : " + icustom_test1, " icoustm_2 : " + icustom_test2," icoustm_3 : " + icustom_test3); Print("時間 " + Time[i], " opne: " + Open[i], " close: " + Close[i]); } }
はい。取得出来ましたー
0がhighエントリーで1がlowエントリーに割り当てられてます。
通常は2147483647になりますが矢印が出る時はUSDJPYの常識的な価格が表示されます。とりまテストなので130以下で判断。
2,3は使用しません。※一応なにかあるかもーと思って取得してみましたが関係なしです。
価格はあまり重要ではなくバイナリーで必要なのはHigh or Lowどちらのエントリーすればいいかだけなので 0 or 1 のみの判断で問題ないです。
私はバカな時間を過ごしてしまいましたがこのブログ記事が誰かの役にたてば幸いです。