EA: 收盘价分形 EA - 页 2

 

需要注释掉这些行。

//Commented string
Незакоментированная строка

要注释掉一行,需要加上"//"。

 
Vladimir Karputov :

需要注释掉这些行。

你需要用"//"来注释掉一行。

是的,这正是我在你之前发给我的代码中所做的,这也是我在下面留下的部分,但是在分形相反符号中,没有一个在 EA平仓的 人!有没有其他方法可以让我改变它!

 //--- 
   if (last_lower!= EMPTY_VALUE && previous_lower!= EMPTY_VALUE )
       if (previous_lower<last_lower)
        {
           //ClosePositions( POSITION_TYPE_SELL); 
         if (CalculatePositions( POSITION_TYPE_BUY )== 0 )
           {
             double sl=(InpTakeProfit== 0 )? 0.0 :m_symbol. Ask ()-ExtStopLoss;
             double tp=(InpStopLoss== 0 )? 0.0 :m_symbol. Ask ()+ExtTakeProfit;
            OpenBuy(sl,tp);
           }
        }
   if (last_upper!= EMPTY_VALUE && previous_upper!= EMPTY_VALUE )
       if (previous_upper>last_upper)
        {
           //ClosePositions( POSITION_TYPE_BUY); 
         if (CalculatePositions( POSITION_TYPE_SELL )== 0 )
           {
             double sl=(InpTakeProfit== 0 )? 0.0 :m_symbol. Bid ()+ExtStopLoss;
             double tp=(InpStopLoss== 0 )? 0.0 :m_symbol. Bid ()-ExtTakeProfit;
            OpenSell(sl,tp);
           }
        }
 //--- 
   Trailing();
  }
 
kwlin_089:

是的,这正是我所做的,就像您之前发给我的代码一样,这也是我在下面留下的部分,但是,在 EA平仓 分形相反符号中工作的人都没有平仓!有没有其他方法可以改变它?


在这种情况下,我不太清楚您到底想要什么。对不起。

 
Vladimir Karputov:

这样的话,我就不太清楚你想要什么了。对不起。

我试着举例说明:

如果 EA 因为检测到 previous_lower[B]<last_lower[A]而打开买入交易,在这个例子中,输入参数是 "止盈:500 点 "和 "止损:200 点",从技术上讲,我们期望 EA 达到这些止盈或止损水平以关闭交易。

但在您的 EA 的这个版本中,当出现反向信号时,即 "止盈:500 点 "和 "止损:200 点",EA 将终止买入交易。

这正是我需要改变的,我已经尝试改变代码中的一些东西,但我想不出代码中的哪一部分会改变这个问题,即当反转信号出现时,交易仍未结束,就终止交易!

如果您有解决方案,请告诉我。

 
kwlin_089:

我试着举例说明:

如果 EA 因检测到 previous_lower[B]<last_lower[A]而打开买入交易,在此示例中,输入参数为 "止盈:500 点 "和 "止损:200 点",从技术上讲,我们期望 EA 达到这些止盈或止损水平以关闭交易。

但在您的 EA 的此版本中,当出现反向信号时,即 "止盈:500 点 "和 "止损:200 点"。

这正是我需要改变的,我已经尝试改变代码中的一些东西,但我不知道代码的哪一部分可以改变这个问题,即当反转信号出现时,交易仍未结束,就终止交易!

如果您有解决方案,请告诉我。


如果我理解正确的话,您需要这样做:

 //--- 
   if (last_lower!= EMPTY_VALUE && previous_lower!= EMPTY_VALUE )
       if (previous_lower<last_lower)
        {
         //ClosePositions( POSITION_TYPE_SELL); 
         if (CalculatePositions( POSITION_TYPE_BUY )== 0 && CalculatePositions( POSITION_TYPE_SELL )== 0)
           {
             double sl=(InpTakeProfit== 0 )? 0.0 :m_symbol. Ask ()-ExtStopLoss;
             double tp=(InpStopLoss== 0 )? 0.0 :m_symbol. Ask ()+ExtTakeProfit;
            OpenBuy(sl,tp);
           }
        }
   if (last_upper!= EMPTY_VALUE && previous_upper!= EMPTY_VALUE )
       if (previous_upper>last_upper)
        {
         //ClosePositions( POSITION_TYPE_BUY); 
         if (CalculatePositions( POSITION_TYPE_SELL )== 0 && CalculatePositions( POSITION_TYPE_BUY )== 0)
           {
             double sl=(InpTakeProfit== 0 )? 0.0 :m_symbol. Bid ()+ExtStopLoss;
             double tp=(InpStopLoss== 0 )? 0.0 :m_symbol. Bid ()-ExtTakeProfit;
            OpenSell(sl,tp);
           }
        }
 //--- 
   Trailing();
  }

工作原理:如果有一个以上的头寸(买入或卖出并不重要),那么我们跳过所有信号,不开新的头寸。

 
Vladimir Karputov :

如果我理解正确,您需要这个:

它是如何工作的:如果有一个以上的仓位(买入或卖出并不重要),我们会跳过所有信号,不开新仓。

完全正确!

谢谢您的帮助!

 
kwlin_089:

这就对了!

谢谢你的帮助


不客气

 

弗拉基米尔先生

能否将此指标作为 HTF 发布?

 
zemo:

弗拉基米尔先生

您能以 HTF 的形式发布这个指标吗?

不能。
 
亲爱的弗拉基米尔...我希望您能帮我编辑这个 EA,以便在分形的基础上,使用 SL 和 TP 对每笔交易进行平仓。感谢您的帮助。祝弗拉基米尔永远健康,永远成功。上帝保佑您。