エキスパート: Alexav SpeedUp M1

 

Alexav SpeedUp M1:

対向するポジションを同時に開きます。トレールストップ


作者: Vladimir Karputov

削除済み  
なぜ、すべての戦略を台無しにする本物のダニを追加したのか?))
 
Maxim Dmitrievsky:
なぜ、すべての戦略を台無しにする本物のダニを追加したのか?))

おそらく、マーケットがテスターグライルで いっぱいにならないようにするためだろう =)

 
Vitaly Muzichenko:

おそらく、市場がテスターのグレイルでいっぱいにならないようにするためだろう =)

そうだ!

 
この矛盾についての説明はない。生成された目盛りは、いったいどのような場所で未来を見ているのだろうか?
 
//+------------------------------------------------------------------+
| 後続|
//+------------------------------------------------------------------+
void Trailing()
  {
   if(InpTrailingStop==0)
      return;
   for(int i=PositionsTotal()-1;i>=0;i--) // オープンポジションの数を返す
      if(m_position.SelectByIndex(i))
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic)
           {
            if(m_position.PositionType()==POSITION_TYPE_BUY)
              {
               if(m_position.PriceCurrent()-m_position.PriceOpen()>ExtTrailingStop+ExtTrailingStep)
                  if(m_position.StopLoss()<m_position.PriceCurrent()-(ExtTrailingStop+ExtTrailingStep))
                    {
                     if(!m_trade.PositionModify(m_position.Ticket(),
                        m_symbol.NormalizePrice(m_position.PriceCurrent()-ExtTrailingStop),
                        m_position.TakeProfit()))
                        Print("Modify ",m_position.Ticket(),
                              " Position -> false. Result Retcode: ",m_trade.ResultRetcode(),
                              ", description of result: ",m_trade.ResultRetcodeDescription());
                     continue;
                    }
              }
            else
              {
               if(m_position.PriceOpen()-m_position.PriceCurrent()>ExtTrailingStop+ExtTrailingStep)
                  if((m_position.StopLoss()>(m_position.PriceCurrent()+(ExtTrailingStop+ExtTrailingStep))) || 
                     (m_position.StopLoss()==0))
                    {
                     if(!m_trade.PositionModify(m_position.Ticket(),
                        m_symbol.NormalizePrice(m_position.PriceCurrent()+ExtTrailingStop),
                        m_position.TakeProfit()))
                        Print("Modify ",m_position.Ticket(),
                              " Position -> false. Result Retcode: ",m_trade.ResultRetcode(),
                              ", description of result: ",m_trade.ResultRetcodeDescription());
                    }
              }

           }
  }

ハイライトのポイントは?

原文が 書かれた当時(2007年)、MQL5は存在せず、それに応じてMQL4にもstrict-directiveはなかった。そのため、多くのネストしたif構文が存在する。現時点では、これは初歩的なものである。そしてKBはトレーニング関数を搭載しているので、他の言語のプログラマーの嘲笑を買わないためにも、この遺物をMQL5に引きずり込む必要はない。


オリジナルを現在のstrcit-MQL4に書き換えれば、そのソースコードは1.5~2倍に縮小される。 その意味で、MT5の亜種はオリジナルに比べて***見た目***~4倍のサイズになる(これは古いMQL4のままである)。なぜ、このようなMT5のアンチ広告を執拗に行うのか!

 
fxsaber:
この矛盾についての説明はない。生成された刻みの未来を見るというのは、具体的にどのような場所なのだろうか?

ずいぶん前のことですが、ここの「参照点」のセクションにありました。

 

私の5桁のECN口座では取引できません。


m

 
moneyfoundbymichael :

これでは5桁のECN口座で取引できません。


m

あなたが取引しない場合は - もちろん:それは影響しません:)