[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 173

 
TarasBY:

この条件は、ループの中で何らかの形で変化します。

...もし「いいえ」なら、なぜループの中に入れるのですか?


まあ要はこういうことです。

外部パラメータにおいて、UseFiltrMa = TRUE の場合は、A > B の条件を考慮する必要があるが、UseFiltrMa = False の場合は、その条件は考慮されない。この条件(A > B)はコードの他の場所には現れません。このフィルターも以前はループの中に入っていたので、ループの中に入れました。結局のところ、スライスの配列がある。ループは、マスクのシーケンス番号(インデックス)を選択する。

A > Bは、私のコードによると、次のようになります。

MA(g_maHigherTF[0]) > MA(g_maHigherTF[1])

ほら、ここですべてがうまくいって、ループの理由がわかるでしょ?

 
hoz:


その要点はこうだ。

外部パラメータにおいて、UseFiltrMa = TRUE の場合は、A > B の条件を考慮する必要があり、UseFiltrMa = False の場合は、その条件を考慮しない。この条件(A > B)はコードの他の場所には現れません。このフィルターも以前はループの中に入っていたので、ループの中に入れました。結局のところ、スライスの配列がある。ループはワゴンのシーケンス番号(そのインデックス)を選択する。

A > Bは、私のコードによると、次のようになります。

ほら、ここですべてがうまくいって、ループの理由がわかるでしょう。

if (A > B) という条件を変更するループ条件は見たことがありません。

ALWAYSには多くの解決策があり、あなたが思いついた方法が必要なのです...。

 
TarasBY:

やはり、if (A > B) という条件を変更するループ条件はないようですね。

ALWAYSは多くのソリューションがあり、あなたが考える方法を求めています...


このループは必要ないのでは...?気にしないでください。上に書いたように条件を入れればいいのです。

ホズ

外部パラメータにおいて、UseFiltrMa = TRUE の場合はA > B の条件を考慮する必要があり、UseFiltrMa = False の場合はその条件は考慮されない。

UseFiltrMa = False の場合、A > B 条件はスキップされます!以上です。他に何も必要ない!ループを気にするな...というのは、どこから何が出てくるか、長い話なんです。ブロックは1つだけです。そして、その課題を説明しました。
 
hoz:


その要点はこうだ。

外部パラメータにおいて、UseFiltrMa = TRUE の場合は、 A > B の条件を考慮する必要が あり、UseFiltrMa = False場合は、その 条件を考慮しない。この条件(A > B)はコードの他の場所には現れません。このフィルターも以前はループの中に入っていたので、ループの中に入れました。結局のところ、スライスの配列がある。ループは、マスクのシーケンス番号(インデックス)を選択する。

A > Bは、私のコードによると、次のようになります。

ほら、ここですべてがうまくいって、ループの理由が見えてきた。

if(UseFiltrMa == TRUE&& А > B )

  {

     //  

   }

else

  {
   //

  } 
 

pako:

if(UseFiltrMa == TRUE&& А > B )

  {

     //  

   }

else

  {
   //
  }


私はそう考えています。もっと短くできないのか?1行で実装可能です。そうでない場合は、コードを引き伸ばす必要があります。

例えば、ノーロス・オーダー機能の前に、こんな挿入をすることが多いですね。

if (UseBU)
{
  // Код функции перевода в БУ
}

しかし、この場合、変数UseBUが Falseに 設定されていれば、それ以上関数を実行する必要はない。だから、そこそこ簡単で短いのです。しかし、ここは違う。コードによる更なる条件 義務的.と思うわけです。

 
hoz:


そういうふうに理解しています。もっと短くできないのか?1行で実装可能です。そうでない場合は、コードを引き伸ばす必要があります。

例えば、ノーロス・オーダー機能の前に、こんな挿入をすることが多いですね。

しかし、この場合、変数UseBUが Falseに 設定されていれば、それ以上関数を実行する必要はない。だから、そこそこ簡単で短いのです。しかし、ここは違う。コードによる更なる条件 義務的.と思うわけです。

要するに、こんな感じ。

if((UseFiltrMa == TRUE && А > B) || UseFiltrMa == FALSE)
{
  if(..........................
 
borilunad:
グローバル変数Hour(), Minute(), Seconds()を使って、真夜中(0.00)にEAから新しいRRレベルや他の行にDailyPivotPointsの変化を制御することは可能でしょうか? 私は以前Hour(), Minute(), Seconds() で直接指標に行い、それは毎晩コンパイルの必要なく機能しました。そして最近止まったのは、もしかしてビルドを変えたから?ありがとうございます。

Boris さん、この質問はproスレッドで聞いてみてください。
 
hoz:

Boris さん、この質問はproスレッドで聞いてみてください。

ビクターさん、ありがとうございました。私のショートバージョンは、あなたのために出てきましたか?

if((UseFiltrMa == TRUE && А > B) || UseFiltrMa == FALSE)
{
  if(..........................
 
granit77:
設定の「プロファイル切り替え時にEAを無効にする」のチェックを外してみて、効果があるかどうか試してみてください。

ありがとうございます。- 試してみます。残念ながら、その答えに気づくのが遅かった。週末はマーケットが休みなのだ。そして、どちらにしてもinit()で設定をリセットすることはできませんでした。理屈ではそうなるはずなのですが。

MTが設定をリセットする理由は全く分かりません。タイムフレームは関係なく、設定でパラメータを設定すれば、(理論上は)どのTFでも保存されるはずです。

 
皆さん、こんにちは。メタトレーダー4でトレードをコピー する方法を教えてください。そのため、ある端末で取引を開始すると、別の端末でも未決済の取引を取得することができます。