マーケットで公開されているEAにおける最小ストップの確認。 - ページ 10

 

Alexey Viktorov:
Это цитата из переписки с модератором маркета? А где упоминание об ошибке 130?

よくわからないけど、フリーランスの引用でしょう。

 

Vladislav Andruschenko:

よくわからないけど、フリーランスの引用でしょう。

マーケットルールもフリーランスルールも、多くのことが書かれていて、すべてのパラメーターで製品をチェックしなければなりませんが、現時点では、フクロウが修正のために戻ってきたり、マーケットに最初に提出する前にこれらのチェックが行われているのでしょうか。
 
Alexey Viktorov:
市場のルールとフリーランスのルールでたくさん書かれており、製品はすべてのパラメータにあるべきチェックが、現時点では、市場への最初の提出前にリビジョンまたはこのチェックのためにあなたにフクロウに返された?

59製品あります :-)

ミニストップやマージンなどのチェックを常にしているということです。

しかし、ちょうど3日前、20回モデレーションを通過したEAの別のアップデートの後、私はそれを取り戻しました - 理由は、stoploss = 1を設定すると、EAがエラー130を 出す。

これは非標準の問題で、サーバー上ではStopLoss = 0とすると、minStopを確認することができないからです。

しかし、以前は問題なく動作していました。

それぞれ - それは等しい最小ストップを設定する必要があります=例えば1スプレッド。

しかし、サーバーがフローティングストップロスを持っている場合、それは1つではなく、例えば3であるかもしれません。

そのため、EAが一度でもエラー130を表示すると、モデレーションを通過することができません。

そして、サーバー上の最小停止レベルに応じて、すべての変数を比較し、再設定することは不可能です(サーバーがnumber = 0を返すだけだからです)。

それが問題なんです。

今のところ、答えは出ていません。EAはモデレーションでぶら下がっています。今のところ、minestopと1スプレッドのチェックと、ユーザーへのエラーメッセージの送信にとどまっています。

 
Vladislav Andruschenko:

59製品あります :-)

ミニストップやマージンなどのチェックを常にしているということです。

しかし、ちょうど3日前、20回モデレーションを通過したEAの別のアップデートの後、私はそれを取り戻しました - 理由は、stoploss = 1を設定するとEAがエラー130を 出すからです。

これは非標準の問題で、サーバー上ではStopLoss = 0とすると、minStopを確認することができないからです。

しかし、以前は問題なく動作していました。

それぞれ - それは等しい最小ストップを設定する必要があります=例えば1スプレッド。

しかし、サーバーがフローティングストップロスを持っている場合、それは1つではなく、例えば3であるかもしれません。

そのため、EAが一度でもエラー130を表示すると、モデレーションを通過することができません。

そして、サーバー上の最小停止レベルに応じて、すべての変数を比較し、再設定することは不可能です(サーバーがnumber = 0を返すだけだからです)。

それが問題なんです。

今のところ、答えは出ていません。Expert Advisorはモデレーションでぶら下がっています。今のところ、minestopと1スプレッドのチェックとユーザーへのエラーメッセージの送信にとどまっています。

長い間モデュレーションボットを待たせていることはありませんか? 以前、あるボットが2週間待たされたことがあります。
 
Alexander Bereznyak:
で、さらにリアルアカウントで 問題が発生する

いや、本当のところは、すべてのチェックが必要なのです。

しかし、マーケットプレイスのモデレーターは、何をチェックし、どう動くべきかを理解していないことが多いのです。

ちなみに130回目のエラーは、端末が返してくれるもので、特に問題にはなりません。

 

小切手を使う

保留中の注文を送信する

if(OrderSend(Symbol(),OP_SELLSTOP,lot,NormalizeDouble(MarketInfo(OrderSymbol(),MODE_ASK)-MathMax(StopLoss,SymbolInfoInteger(_Symbol,SYMBOL_TRADE_STOPS_LEVEL))*_Point,_Digits),0,0,0,Com,Magic,clrNONE)==false)
                    {
                     Print(__FUNCTION__+" error: ",Error(GetLastError()));
                    }

ストップロスやテイクアウトを変更する

if(op_type==OP_BUY)
              {
               SL=NormalizeDouble(OrderOpenPrice()-MathMax(StopLoss,(int)MarketInfo(_Symbol,MODE_STOPLEVEL))*_Point,_Digits);
               TP=NormalizeDouble(OrderOpenPrice()+MathMax(TakeProfit,(int)MarketInfo(_Symbol,MODE_STOPLEVEL))*_Point,_Digits);
              }

で、動作やモデレータによるチェックに問題はありません。

 
Vladimir Gribachev:

小切手を使う

保留中の注文を送信する

ストップロスやテイクアウトを変更する

で、動作やモデレータによるチェックに問題はありません。

だから、私はラッキーなんです。しかし、この方法では、サーバーが0 Stop Levelを返したにもかかわらず、実際にはStop Levelが2-3スプレッドと等しい場合、EAは失速して頑なにエラー130を 発生します。このアルゴリズムをブローカーA******の標準アカウントで、ストップロスを1ポイントにして試してみてください。
 
Ihor Herasko:
私は同じアルゴリズムを1ピップのストップロスでテストしていました。

質問、なぜリアルで ストップロスを1ポイントにしたのですか?

今思い出したけど...以前、同様のアルゴリズムを最小のストップロスでテストしたことがありますが、チェックは基本的に同じで、エラーもなく、利益も出ませんでした。

 
Vladimir Gribachev:

質問、なぜリアルで ストップロスを1ポイントにしたのですか?

今思い出したけど...以前、このようなアルゴリズムを最小限のストップロスでテストしたことがありますが、チェックは基本的に同じで、エラーはなく、利益も出ませんでした。

すでにここで10回ほど書きましたが、1pipのストップロスはMarket Moderatorが商品をチェックする際に置くものです。実際の取引では、もちろんこのようなストップを設定する人はいない。
 
Vitalii Ananev:
すでにここで10回ほど書いていますが、ストップ1のポイントは、マーケットプレイスのモデレーターが製品をテストする際に設定するものです。実際の取引では、もちろんそんなストップをかける人はいない。

MetaQuotes-Demoサーバー(モデレーターがテストしているところ)では、min.ストップレベルは普通に戻りますね。自分で確認する、0 - はしない。