我从来没有学过编程,但我想写一个EA - 页 5

 
Sergey Lobzankin:

亲爱的康斯坦丁!!。
我理解这一切。但我很抱歉,伙计们,我不能完全破坏代码。所以你为策略写了一个TS,然后把它卖掉? 我征求了你的意见,我继续做。

你是认真的吗?

这里都已经写了很久了,任何策略都已经改写了五次了。我一直记得一个说法:"一切新事物都是早已被遗忘的旧事物"。

你不需要布置策略,你可以用一个指标代替另一个指标,或者干脆用High[1]>Low[0]代替主条件。

 
Sergey Lobzankin:

亲爱的康斯坦丁!!。
我理解所有这些。但我很抱歉,伙计们,我不能完全失去代码。所以你可以写一个TS策略并出售它? 我已经征求了你的意见,我一直在做。

然后,它是这样的

void  Trailig(double ATR)
{
  int stopLevel = (int)SymbolInfoInteger(_Symbol, SYMBOL_TRADE_STOPS_LEVEL)+1;
  for(int i = OrdersTotal()-1; i>=0; i--)
  {
    if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    {
      if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
      {
        if(OrderType() == OP_BUY)
        {
          double stoploss = NormalizeDouble( (Bid - MathMax( TrailingStop, stopLevel)*Point), Digits);
          if(OrderStopLoss() < stoploss || OrderStopLoss() == 0)
          {
            if(StopLoss == SL)          // Параметры не известны, поэтому сказать ни чего не возможно
            {
              if(OrderStopLoss() == SL) // Параметры не известны, поэтому сказать ни чего не возможно
              {
                double takeprofit = NormalizeDouble( (Bid+MathMax( 3,stopLevel)*ATR),Digits);
                if(!OrderModify(OrderTicket(), OrderOpenPrice(), stoploss, takeprofit/*takeprofit*/, 0))
                  Print("Ошибка модификации ордера на покупку!");
              }
            }
          }
        }
      }
    }
  }
}

或模拟

void  Trailig(double ATR)
{
  int stopLevel = (int)SymbolInfoInteger(_Symbol, SYMBOL_TRADE_STOPS_LEVEL)+1;
  for(int i = OrdersTotal()-1; i>=0; i--)
  {
    if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
    if(OrderSymbol() != _Symbol) continue;
    if(OrderMagicNumber() != Magic) continue;
    if(OrderType() != OP_BUY) continue;
    
    double stoploss = NormalizeDouble( (Bid - MathMax( TrailingStop, stopLevel)*Point), Digits);
    if(OrderStopLoss() > stoploss && OrderStopLoss() > 0) continue;
    if(StopLoss != SL) continue;        // Параметры не известны, поэтому сказать ни чего не возможно
    if(OrderStopLoss() != SL) continue; // Параметры не известны, поэтому сказать ни чего не возможно
    double takeprofit = NormalizeDouble( (Bid+MathMax( 3,stopLevel)*ATR),Digits);
    if(!OrderModify(OrderTicket(), OrderOpenPrice(), stoploss, takeprofit/*takeprofit*/, 0))
      Print("Ошибка модификации ордера на покупку!");
  }
}
 
Konstantin Nikitin:

然后,它是这样的

或类似于

无意冒犯。
,我几乎想明白了。
,我引用的代码中的条件从来没有,或几乎没有
,从Youtube上复制,替换了我的值,这就是结果。
,检查,检查,再检查。

,我可以问你一个问题吗?你主要卖机器人信号吗?不是手动交易

 
Sergey Lobzankin:

亲爱的康斯坦丁!!。
我理解这一切。但我很抱歉,伙计们,我不能完全失去代码。所以你写了TS策略并出售了它? 我征求了你的意见,我继续这样做。

谢尔盖先生,你真的认为有可能让本地程序员感到惊讶吗?他们已经把所有的策略写了好几遍,有不同的变化,如果他们要给这么多钱,那就不可能焦头烂额了。所有的程序员都会生活在他们自己岛屿的阳光海岸上。

 
Alexey Viktorov:

亲爱的谢尔盖,你真的认为有什么可以让本地程序员感到惊讶的吗?他们已经把所有的策略以不同的形式写了好几遍,如果他们要给这么多的东西,不能焦头烂额。所有的程序员都会生活在他们自己岛屿的阳光海岸上。

那里没有互联网和移动通信,所以大家都住在这里--在论坛上=)

 
Sergey Lobzankin:

我理解,对不起,伙计们,我不能失去所有的代码。 那么你可以写一个策略,然后卖掉它? 我征求了你的意见,我仍然在做。

你高估了你的TS。

除非你拿出一个 有一年历史的真实账户,否则没有人会要。

 
Vitaly Muzichenko:

那里没有互联网或手机接入,所以大家都住在这里--在论坛上=)

因此,卫星在任何地方都可以使用...)))))

 
Vitaly Muzichenko:

没有互联网或手机接入,所以大家都住在这里--在论坛上=)

因此,用这些钱你可以买一台发电机和卫星连接--互联网。

 
Sergey Lobzankin:

我可以问你一个问题吗,你主要是卖机器人信号吗,而不是手动交易?

所有的信号都是由专家制定的。即使在MT5上,虽然没有显示100%的自动交易,但事实上是100%。这是本地统计计算中的一个故障,它将专家顾问设定的SL上的头寸触发视为手动交易

 
Konstantin Nikitin:

由专家顾问触发的***SL交易被算作手动交易。

为了检查这一点,值得看一下被SL触发的交易的神奇数量。如果我没有弄错的话,他们会有 "0"。