首页 系统交易 帖子

ExpertClor_v01 - MetaTrader 5 的智能交易助手

附件
18677.zip (4.16 KB, 下载 0次)

创意作者约翰·史密斯MQL5代码作者barabashkakvn

这是一个辅助型的智能交易顾问(EA),功能仅限于平仓:

ExpertClor_v01

该EA能够将未平仓的交易调整为保本状态,并根据StopATR_auto指标计算止损,交易在两条移动平均线交叉时平仓。

为了让EA正常工作,您需要将编译后的StopATR_auto指标文件放入文件夹 MQL5\Indicators\Downloads

//+------------------------------------------------------------------+
//| 专家初始化函数                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
...
//--- 创建指标的句柄 iCustom
   handle_iCustom=iCustom(m_symbol.Name(),TimeFrame,"Downloads\StopATR_auto",
                          CountBarsForAverage,
                          Target
                          );

虽然这个智能顾问仅限于平仓,但我也加入了一小段代码用于开仓:

//+------------------------------------------------------------------+
//| 专家每次价格变动函数                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(MQLInfoInteger(MQL_DEBUG) || MQLInfoInteger(MQL_PROFILER) || 
      MQLInfoInteger(MQL_TESTER) || MQLInfoInteger(MQL_OPTIMIZATION))
     {
      static long counter=-50;
      static bool trade_buy=true;

      if(counter==0)
         m_trade.Buy(m_symbol.LotsMin());
      else if(counter%1500==0)
        {
         if(RefreshRates())
           {
            if(trade_buy)
              {
               OpenBuy(m_symbol.LotsMin());
               trade_buy=false;
              }
            else
              {
               OpenSell(m_symbol.LotsMin());
               trade_buy=true;
              }
           }
         else
            counter=counter-9;
        }

      counter++;
     }
//---

该模块仅在测试或优化此智能顾问时工作。每1,500个价格变动后开一个买入或卖出。

相关帖子

评论 (0)