[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 408

 

なぜスクリプトはすべての注文を削除しないのでしょうか。3つの買い指値注文が開いており、1つの買い 成行注文があります。

for(i = 0; i < OrdersTotal(); i++)
                {
                if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == FALSE) break;
                if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
                        {
                        Print(i);
                        if(OrderType() == OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,Slippage);
                        if(OrderType() == OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,Slippage);
                        if(OrderType() == OP_BUYSTOP) OrderDelete(OrderTicket());
                        if(OrderType() == OP_SELLSTOP) OrderDelete(OrderTicket());
                        }
                }
 
sss2019:

なぜスクリプトはすべての注文を削除しないのでしょうか。3つの買い指値注文が開いており、1つの買い成行注文があります。

なぜなら、MT4では取引の流れは1つであり、一度に出せる取引注文は 1つだけだからです。各注文の後、取引の流れが忙しくなっていないことを確認する必要があります。
 
sss2019:

なぜスクリプトはすべての注文を削除しないのでしょうか。3つの買い指値注文が開いており、1つの買い成行注文があります。


レシェトフ
なぜなら、MT4では取引の流れは一つであり、一度に一つの取引注文しか出せないからです。各注文の後、取引の流れが忙しくならないようにする必要があります。

ノー


この問題は単純にループの中にある。iは 0から2まで通過するが、2から0が必要だ。

 
こんにちは!例えば、OP_BUYがクローズしてOP_SELLをオープンするシグナルがあり、 OP_BUYが オープンしてクローズする、というように順番にオーダーをオープンさせる方法を教えてください !...
 
lowech:
こんにちは!例えば、OP_BUYの最初に、それが閉じられ、OP_SELLを開く信号があるとき、そしてそれは買い信号で閉じている OP_BUYを開くなど、一つずつ注文を開くようにする方法を教えてください......!?

セマフォ(bool)を使えば、とても簡単に解決します。

考えてみると、うまくいくかもしれません。

 
sss2019:

なぜスクリプトはすべての注文を削除しないのでしょうか。3つの買い指値注文が開いており、1つの買い成行注文があります。

削除したいが選択できないbuylimit(このタイプ)
 
DhP:

セマフォ(bool)を使えば、とても簡単に解決します。

考えればわかる。

ご指摘ありがとうございました。
 
Skydiver:
例を挙げて説明してください。
100%儲かるトレードをするシステムはありえない。一連の負けトレードの最大長を1とするようなシステムも不可とする。ピュアマーチンでは、1-2-4-8-16-といった具合に、原則的にロットが変化します。この場合、損失は1-3-7-15-などの原則で増加します。

任意のシステムをとり、ロット=1を固定したシステムを仮定すると、PPUUUPUのシリーズが得られます。ここで、Pは利益、Uは損失です。その結果、1-2-3-4-5-という原則に従って、損失が増えるのです。マーチンゲールよりどう優れているのですか?ただ、マーチンゲールの場合ほど損失が膨らまないということです。それ以外は、ナターシャと同じで、ショーツが違うだけです。
 
MT4に組み込まれたストラテジーテスターでの テストはどの程度の精度がありますか?どうすれば増やせるのか?
 
sergeev:

ノー


i は 0 から 2 までで、2 から 0 にしたいのですが、ループの中に問題があります。



例を示してください、私はそうしました
 for(i = OrdersTotal(); i > 0; i--)
うまくいかなかった。