2016年8月2日火曜日

未知との遭遇2!! ソース公開してみよう!! SUPERスプレッド0作戦

今日は一日考えていましたが、先程の現象が理解できませんでした。

さて、開発していたEAはまたブローカー様に怒られそうなものなのです。
(さてではじまる時は機嫌がいい時のようです)
①現在のAsk値で逆指値発注をします。この時にSLをAskに設定します。
②次のティック変動時に価格(Bid)がAskを超えていないとキャンセルです。
③Askを超えていた場合自動的に発注がかかりますので、
そこからシャンデリアトレーリングです。
④自動発注の次のティック以降にAskを切ると±0で終了です。

懐けてSuperスプレッド0作戦です!!!!

この天才的発想!!
ご理解いただけるでしょうか!!
わたしは理解できていませんがw
カイジを超えたのではないでしょうか!!
そしてFX-ONの御担当様は
いまカイジに夢中だそうです^^

※ごめんなさい 書きながら興奮しています



ソースコードはこちらです。

int d;double T;
void OnTick(){if(OrdersTotal()==0)
{T=Ask;d=OrderSend(Symbol(),OP_BUYSTOP,0.1,T,0,T,0,NULL,1,0,0);}
else{d=OrderSelect(0,SELECT_BY_POS);if(OrderType()==4){d=OrderDelete(OrderTicket(),0);}
else{if(T<Bid){T=Bid;d=OrderModify(OrderTicket(),T,T,0,0,0);}}}}


長い前振りのわりに短いコードでごめんなさい。
解りやすさを目指してSymbol()やSELECT_BY_POSなど残してみました

スプレッド4くらいでは普通に動きます。
スプレッド10くらいから緑の波形が見えてきます!!

仮に原則固定スプレッド3 実スプレッド8のブローカーがあったとします
AskのかわりにBid+10にすればムフフかもしれません。
ストップレベルが有ると動きませんが・・・


3 件のコメント:

  1. この OrerSend だと、BUYSTOP に引っかかった時、SLが Bid 値を超えていてすぐにロスカットになりそうな気がするんですが、BUYSTOPかかった Tick では SL って見ないようになっているんでしょうか。そしてついの Tick からSLを見る?その辺、よくわかっておりません。。。。

    返信削除
  2. 仮説ですが、BuyStopではオーダー後1ティック動かないと注文が成立しないのでは、ないでしょうか
    そして注文成立後1ティック動かないとSLは発動しないと考えるとこうなるのかと思います。リアルではブローカーのサーバーと時間差があるのでキャンセルが間に合わないかもしれません

    返信削除
  3. なるほどー
    これが高速接続ムフフ作戦なわけですね!!
    楽しみ楽しみ。。。

    返信削除