またまた修正 | 素人開発自動売買システムのリアルタイム購入記録

素人開発自動売買システムのリアルタイム購入記録

MetaTrader4を使って自作EAを開発し必勝法を研究する日記。2008年からなんとか順調に儲かってます。

どうやら原因は違うようだ。

OrderSend関数のSlippageパラは 0 にしろということ?

OrderCloseも同様らしい。

ODL しっかりアナウンスしろよ~

どうやらマダ混乱状態みたいだ...

ODL だめか?


・普通にEAが注文入れるとエラー130(SLが不正)
→slippage0にすると解消?(俺はためしてない)
→SL、TPなしで注文してOrderModify()するといい?
(週持越しのOrderModify()がエラー130ではねられてるからダメでは?)
→デモでは通る(俺は確認してない)
→バックテストでは通る
・手動で成り行き注文入れてみたら通った
→決済できないと死にます(泣
・桁数増加
→TP、SL関係は全部10倍
→NormalizeDouble()してるところはPointみて桁数増加


ret = OrderSend(Symbol(), OP_BUY, lots, Ask, slippage, 0, 0,
       "Buy(#" + magic_number + ")", magic_number, 0, Blue);
if (ret < 0) {
Print("OrderSend(OP_BUY) ERROR:",GetLastError());
}
else {
OrderModify(ret,Ask,sl_limit,tp_limit,0,Blue);
}

FXCM-BTでは次のように書き直せと

OrderSend(Symbol(),OP_BUY,1,Ask,3,Ask-25*Point,Ask+25*Point,
         "My order #2",16384,0,Green);

   ↓

ticket=OrderSend(Symbol(),OP_BUY,1,Ask,0,0,0,
       "My order #2",16384,0,Green);
if(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET);
OrderModify(OrderTicket(),OrderOpenPrice(),STOPLOSS,TAKEPROFIT,0,Green);
}
else
{
Print("OrderSend failed with error #",GetLastError());
}