int w = OrdersHistoryTotal()-1; if (OrderSelect(w, SELECT_BY_POS, MODE_HISTORY)) { if (OrderProfit() < 0) { if (OrderType()==OP_BUY) i = i + 1; if (OrderType()==OP_SELL) y = y + 1; Print("i, y", i, " ", y); Print("OrderProfit()", OrderProfit()); } }
int w = OrdersHistoryTotal()-1; if (OrderSelect(w, SELECT_BY_POS, MODE_HISTORY)) { if (OrderProfit() < 0) { if (OrderType()==OP_BUY) i = i + 1; if (OrderType()==OP_SELL) y = y + 1; Print("i, y", i, " ", y); Print("OrderProfit()", OrderProfit()); } }
int w = OrdersHistoryTotal();
int BUY=0;
int SELL=0;
for (i=0; i<w; i++)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
{
if (OrderProfit() < 0)
{
if (OrderType()==OP_BUY) BUY++;
if (OrderType()==OP_SELL) SELL++;
}
}
}
Print(" BUY = ",BUY);
Print(" SELL = ",SELL);
EAの自動計算を開始させるために必要です。
理解を助ける。
タスクは、負けた買い/売り注文を個別に数えることです。コード
int w = OrdersHistoryTotal()-1;
if (OrderSelect(w, SELECT_BY_POS, MODE_HISTORY))
{
if (OrderProfit() < 0)
{
if (OrderType()==OP_BUY) i = i + 1;
if (OrderType()==OP_SELL) y = y + 1;
Print("i, y", i, " ", y);
Print("OrderProfit()", OrderProfit());
}
}
コード自体はEAからのスニペットです。Expert Advisorが動作しており、常に損失を発生させている。負けた注文が多い(他で印刷している)、全てログに残る。しかし、このコードの断片では、Expert Advisorは入力しません。
if (OrderProfit() < 0)
私は何を間違えているのだろう?
ポジションを開くだけのEAがあるのか?それぞれのコピー(バージョン)には、それぞれのマジシャンがいて、それぞれが自分のポジションだけをモニターするようにします。
了解です、ありがとうございました
理解を助ける。
タスクは、負けた買い/売り注文を個別に数えることです。コード
int w = OrdersHistoryTotal()-1;
if (OrderSelect(w, SELECT_BY_POS, MODE_HISTORY))
{
if (OrderProfit() < 0)
{
if (OrderType()==OP_BUY) i = i + 1;
if (OrderType()==OP_SELL) y = y + 1;
Print("i, y", i, " ", y);
Print("OrderProfit()", OrderProfit());
}
}
コード自体はEAからのスニペットです。EAが稼働し、常に損失を発生させている。負けた注文が山ほどある(他で印刷している)ので、すべてログに残している。しかし、このコードの断片では、Expert Advisorは入力しません。
if (OrderProfit() < 0)
私は何を間違えているのだろう?
トライ
気が狂いそうだ、私のmql4はどうしたんだ?
なぜソフトウェアは各サイクルで次の条件を実行するのですか? i "は新しいオーダーがクローズされたときだけ印刷されるべきと書かれています!?
w = OrdersHistoryTotal();
if (i!=w)
{
i = w;
Print ("i :", i);
}
おかしくなりそうだ、私のmql4はどうしたんだ?
なぜプログラムは各サイクルごとに次の条件を実行するのか? 新しい注文が成立したときだけ "i "を表示するように書かれているのだ!?
w = OrdersHistoryTotal();
if (i!=w)
{
i = w;
Print ("i :", i);
}
i がスタティック変数 でない場合は、tick ごとに表示されます。
i がスタティック変数でない場合も、tick ごとに表示されます。
おお、なぜか私のプログラムでは何枚もお尻を動かしているのが気になりました=)
では、異なるティックで値を使用するすべての作業用変数を静的に宣言する必要があるのですか?
おお、なぜかお尻から何本もソフトが動いているのが気になりました=)
では、異なるインスタンスで値を使用する作業変数は、すべて静的に宣言する必要があるのですか?
難しいですね。 変数のプロパティを見て、何をどう宣言するか考えてみてください。
OrderModify()関数では、コメントを変更することはできません。他に方法はないのでしょうか?
OrderModify()関数では、コメントを変更することはできません。他に方法はないのでしょうか?
端末からのみ