// На глобальном уровнеdoublePart = 1; // на сколько разделить лот для частичного закрытия //..........void ClosePartPosBySelect(double Part) // Объявление функции// ... тру-ля-ля ... тело функции ...ll=NormalizeLot((OrderLots()/Part)); // рассчёт лота внутри функции// ... дальнейший код ф-ции ...//--------- Вызов функции частичного закрытия ---------// Происходит из тела этой функцииvoid TrailingPositionsTLE(int MAGIC, int CloseMethod, double Part, int LastTrailing)
// таким образом:if (CloseMethod==1)
ClosePartPosBySelect(Part);
ミュートはどのように行うのですか?白ニーソにドライブ。ツールウィンドウがたくさんあります(33)。EAはありません。真ん中とズップだけでいい。どこから歌っているのかがわからない。お願いですから、助けてください。サービス、イベントがありました。イベントの十字架は何の役にも立たない。まだ歌ってるのかよ、この野郎。
テクノ
ムクドリは七面鳥に座ることができる )))
コードに目を通しましたが、どこにもアラートがありません。どうすればいいのか?
コードに目を通しましたが、どこにもアラートがありません。どうすればいいのか?
PlaySound() で確認。
。
ポジションの部分決済のために、グローバルに設定されている変数Partに特定の値を代入し、注文の部分決済を実行する関数にパラメータとして渡す必要があります。この変数は単純な除算器である。つまり、初期値を1とした場合、ロットを1で割って全ポジションをクローズします。取引条件が変わると、この変数に新しい値が入り、例えば1.5や2などになり、ポジションロットをこの数値で割って、部分決済が行われます。パラメータ渡しを 伴う関数呼び出しは、そのままでは次のようになります。
そのため、この関数が呼ばれたときにもかかわらず ...
...CloseMethod = 1 (パーシャルクロージャー)が設定され、Part = 2 が明示的に指定された場合、この関数はプログラムの途中で指定された Part 値 (例:2) の代わりに、グローバルに設定された初期値 =1 を渡す...。
どうすれば倒せるのか?ありがとうございます...
さて、取引条件が変わったら、パート変数を変更します。それとも別のEAで持っているのでしょうか? それなら、この変数は常に読み込まれなければなりません。
int init()
{
.....
GlobalVariableSet("Part0",Part)。
.....
}
int start()
{
...
Part=StrToInteger(GlobalVariableGet("Part0"));
...
}
さて、取引条件が変わったら、パート変数を変更します。それとも別のEAで持っているのでしょうか? それなら、この変数は常に読み込まれなければなりません。
int init()
{
.....
GlobalVariableSet("Part0",Part)。
.....
}
int start()
{
...
Part=StrToInteger(GlobalVariableGet("Part0"));
...
}
関数にパラメータで変数を渡す場合、変数は値で渡されます。つまり、関数自体の中で変数を変更しても、上書きされることはないのです。
パラメータ名の前に"&"を入れて、参照渡しを試してみてください。
コードに目を通しましたが、どこにもアラートがありません。どうすればいいのか?
イベント」タブで、「許可」のチェックをはずす。
プロフェッショナルの皆様、こんにちは。
売りと買いの2つの注文を同時に出すEAを ぜひ作りたい のですが。
そして、一定のポイント(パラメータlim)が経過すると、負け注文がクローズされることになる。
注文が開始されてからの最大価格を下回ると、利益のあるものがクローズされます。
(一種の仮想トレーリングストップ)。
苦し紛れに作成したのですが、うまくいきません...。はたらかない
何かご提案ください
実行時にグローバルに定義された変数に異なる値を代入し、異なる関数を呼び出すとそれが保存されるようにするにはどうすればよいでしょうか。
りょうよう
1.値を変更する関数にアンパーサントを追加する。
例)void function( double& Part){}。
を呼び出すと,関数内の値が変更されたときに,新しい値が呼び出した場所に戻ってきます.
2. 関数のパラメータリストから変数を削除する。変数はグローバルに定義されているので、パラメータとして渡さずにコードのどの場所でもその値を変更することができる...
しかし、混乱を避けるために、この変数が何であるかを考えないように、1番目の変形が良い、このようなグローバルに定義された変数は、1つの関数内で、複数存在することができるので...。
投稿をちらっと見たら、もう答えが出てる...。
が、関数内部で変更されたその値は、外部には返されない。
機能そのものを表示する。
void ClosePartPosBySelect(double Part)の場合、以下のように変更します。
void ClosePartPosBySelect()