'fGet_MineGV' - function already defined and has a body K:\TEST\experts\01___AUDUSD.mq4 (1679, 14)
'ls_Name' - variable already defined K:\TEST\experts\01___AUDUSD.mq4 (1681, 16)
2 error(s), 0 warning(s)
Извиняюсь, ошибся, сложно, когда нет кода пнред глазами.Вот так.
自分で書く - 1つのループがあります。とにかくやってみることです。もし、失敗したら、ループのコードを見せてください。
。
私はサイクルに問題があります。
冒頭は何度も見ているのですが......。
next it's foggy....
for (i=0; i<k; i++) {.
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
私が理解できるのは、それぞれのiに...何かが割り当てられているということだけです。
でも、このiの混在したものをどうしたらいいのか......さっぱりわからない......」。
リゴニッチ
なるほど、ようやく納得がいくようになった。つまり、中括弧の中の短い文字列は関数呼び出し であり、関数そのものをどこかに配置する必要があるのです。
では、順番に。
initに最初の関数の呼び出しを追加するのは、init関数の起動直後、つまりこのようにすれば、正しく動作するのですね?
int init() { fGet_MineGV(); } //... и далее мой код, который был ранее
同様に、2つ目の関数の呼び出しをスタートブロックに追加します。変数の計算後、すぐに実行すれば、正しいのでしょうか?例えばこんな感じ。
この最初の2ステップは正しいですか?
まあ、実際、すぐにありがとうございましたって言ったんですけどね。if=trueの場合、ifシリーズから抜け出すにはどうしたらよいですか?
もし
もし
if (TRUE) - しかし、最初からやり直す必要があり、それ以上進めない。
もし
もし
.......
ライブラリで正しい関数が見つからなかった
最後に決済したポジションの利食いサイズ。
誰か持ってるかも?
入金通貨でのテイクプロフィットサイズは、OrderProfit()で、終値から始値を引いたpipsで返されますが、最後のクローズポジションをどうやって見つけるか、あるいはそのための既製の関数をどこで手に入れるかは、何度か説明されたかと思います。
if=trueの場合、ifシリーズから抜け出すにはどうしたらよいですか?
もし
もし
if (TRUE) - しかし、最初からやり直す必要があり、それ以上進めない。
もし
もし
.......
もし
もし
if (TRUE) - しかし、もう一度最初からやり直す必要があり、それ以上上に行くことはできません。
else {
もし
もし
.......
}//if (TRUE) - しかし、最初からやり直す必要があり、 それ以上上に行くことはできません。
実は、約99.9%のケースで、これはアルゴリズムの実装について十分に考えていないことを意味します。
もし
もし
if (TRUE) - しかし、もう一度最初からやり直す必要があり、それ以上上に行くことはできません。
else {
もし
もし
.......
}//if (TRUE) - しかし、最初からやり直す必要があり、 それ以上上に行くことはできません。
実は、約99.9%のケースで、アルゴリズムの実装を十分に考えていないことを意味します。
:)) は、すでに解決策を見つけたようです。
return (0) - と素晴らしくすべての場合出てくる。
もし
もし
if (TRUE) - しかし、もう一度最初からやり直す必要があり、それ以上上に行くことはできません。
else {
もし
もし
.......
}//if (TRUE) - しかし、最初からやり直す必要があり、 それ以上上に行くことはできません。
実は、約99.9%のケースで、これはアルゴリズムの実装について十分に考えていないことを意味します。
入金通貨での利益確定 サイズは、OrderProfit()関数で、終値から建値を引いたポイント数で返されます。 最終決済ポジションの見つけ方、またはそのための準備関数はどこで手に入るかは、何度か説明されたと思いますが、この関数では、終値から建値を引いたポイント数で返されます。
その通りです。まず、最後に閉じたポジション のチケットを取得する必要があります GetTicketLastPos 、そしてこのチケットから必要なものを取り出すために標準関数を使用します。
ありがとうございます。
リゴニッチ
なるほど、ようやく納得がいくようになった。つまり、中括弧の中の短い文字列は関数呼び出しであり、関数そのものをどこかに配置する必要があるのです。
では、順番に。
initに最初の関数の呼び出しを追加するのは、init関数の起動直後、つまりこのようにすれば、正しく動作するのですね?
同様に、2つ目の関数の呼び出しをスタートブロックに追加します。変数の計算後、すぐに実行すれば、正しいのでしょうか?例えばこんな感じ。
この最初の2ステップは正しいですか?
まあ、実際、すぐにお礼を言ったんですけどね。ほとんど。initeでは呼び出しを挿入する前にあった最初の{を削除し、startでは呼び出しの前後にある両方の{}を削除します。 あとは関数コードをコピーして、すべてのEAコードの後に置いてEAをコンパイルするだけです。
すみません、私のミスです。目の前にコードがないときは難しいですね。
リゴニッチ
偶数個のブラケットを残すためにブラケットを外しました。つまり、どちらの関数も中括弧を付けずに挿入される。
その結果、以下のようになりました。
そして、すべてのEAコードの後に、次のコードを挿入しました。
最後の中括弧の後、実はEAとは別にそう受け止めています。これでいいのでしょうか?
合っているならば、コンパイル後はこうなります。
もしコードが短ければ、ここに投稿して、すべての問題がすぐに解決されるでしょう。しかし、このEAは1700行あり、さらに3つの外部インジケータがあり、その中でほとんどの計算が行われています...。だからメールのみですが、もう明らかにタダではやっていない。