这是一个跨平台 МТ45 EA 交易。 - MetaTrader 5EA
- 显示:
- 3187
- 等级:
- 已发布:
- 2017.11.16 10:07
- 需要基于此代码的EA交易或指标吗?请在自由职业者服务中订购 进入自由职业者服务
交易策略
在一次亏损交易之后,МТ45 EA 会在下一次交易中使用更多手数。
第一个交易永远是买入操作,在那之后,仓位会转变,也就是买进-卖出-买进。
EA 会在烛形开启时建立仓位,
在止损之后,EA会以KL为系数增加手数直到它达到最大值 ML. 然后,手数会重设到最初值,即 LТ.
EURUSD, Н1 时段. EA 是在 11.01.2014-09.09.2017 期间优化的
EA的设置
input int Stop = 600; // 止损 input int Take = 700; // 获利 input int Slip = 100; // 滑移 input int MN = 123; // 幻数 input double LT = 0.01; // 手数 input double KL = 2; // 手数增加的比例 input double ML = 10; // 最大手数
特性
跨平台模式是使用预处理转义来实现的,马丁格尔函数的一个例子:
//+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ double Lot() { double lot=LT; //--- MQL4 #ifdef __MQL4__ if(OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY)) { if(OrderProfit()>0) lot=LT; if(OrderProfit()<0) lot=OrderLots()*KL; } #endif //--- MQL5 #ifdef __MQL5__ if(HistorySelect(0,TimeCurrent())) { double profit=HistoryDealGetDouble(HistoryDealGetTicket(HistoryDealsTotal()-1),DEAL_PROFIT); double LastLot=HHistoryDealGetDouble(HistoryDealGetTicket(HistoryDealsTotal()-1),DEAL_VOLUME); if(profit>0) lot=LT; if(profit<0) lot=LastLot*KL; } #endif if(lot>ML)lot=LT; return(lot); }
回溯测试
МetaТrader 4 终端:
МetaТrader 5 终端:
技巧
- 推荐把这个EA只是作为您自己策略的基础。
由MetaQuotes Ltd译自俄语
原代码: https://www.mql5.com/ru/code/19102