leonerd #: Здравствуйте. А как программно узнать символ и таймфрейм активного чарта в клиентском терминале? Т.е. чарта выбранного в настоящее время во вкладке. Есть какая-то функция из MQL5 для этого?
longChartGetInteger(
long chart_id, // идентификатор графикаint prop_id, // идентификатор свойстваint sub_window=0// номер подокна, если требуется
);
チャートトップ
チャートを他のすべてのチャートの上に表示する
ブール
stringChartSymbol(
long chart_id=0// идентификатор графика
);
ENUM_TIMEFRAMESChartPeriod(
long chart_id=0// идентификатор графика
);
Примеры работы с графиком - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
leonerd #:
Здравствуйте. А как программно узнать символ и таймфрейм активного чарта в клиентском терминале? Т.е. чарта выбранного в настоящее время во вкладке. Есть какая-то функция из MQL5 для этого?
チャートトップ
チャートを他のすべてのチャートの上に表示する
ブール
チャート識別子も表示されるようにするにはどうしたらいいですか?
チャートトップ
チャートを他のすべてのチャートの上に表示する
ブール
チャートIDも表示するように定義するにはどうしたらいいですか?
https://www.mql5.com/ru/docs/constants/chartconstants/charts_samples#chart_foreground
ありがとうございます。CHART_FOREGROUND が最も適していると思われます。無理にアクティブなチャートを設定する必要はなく、どのチャートがアクティブかを判断すればよいのです。CHART_FOREGROUNDを チェックするために、開いているすべてのチャートを調べなければならないと考えていいのでしょうか?
https://www.mql5.com/ru/docs/constants/chartconstants/charts_samples#chart_foreground
ありがとうございます。CHART_FOREGROUND が最も適していると思われます。無理にアクティブなチャートを設定する必要はなく、アクティブなものだけを特定すればいいみたいです。CHART_FOREGROUNDを チェックするために、開いているすべてのチャートを通過しなければならないというのは正しい理解でしょうか?
CHART_FOREGROUNDは 、上部にチャートがあります。
そして、それを強制するのではなく、ChartSetIntegerをChartGetIntegerに置き換える必要があります。
ヒントを教えてください。私はロボットについて考えていて、4つの異なる条件があります。
つまり、4つの条件(f1,f2,f3,f4)です。(0,0,1,1)や(1,0,1,0)などの多くの組み合わせがあり、合計16通りの組み合わせがあるのです。ちょうど 15 - 変形 (0, 0, 0, 0) は考慮されません。
質問:15通りの組み合わせをすべてコードに記述しないためのプログラムロジックの作成方法。それぞれの条件を確認するための機能があり、どの組み合わせで適用されるのか、つまりHow elseを確認します。
多くの条件を簡潔なコードで入力できるExpert Advisorを紹介していただけると幸いです。
ヒントを教えてください。私はロボットについて考えていて、4つの異なる条件があります。
つまり、4つの条件(f1,f2,f3,f4)です。(0,0,1,1)や(1,0,1,0)などの多くの組み合わせがあり、合計16通りの組み合わせがあるのです。より正確には、15 - 変形 (0, 0, 0, 0) は考慮されません。
質問:15通りの組み合わせをすべてコードに記述しないためのプログラムロジックの作成方法。それぞれの条件を確認するための機能があり、どの組み合わせで適用されるのか、つまりHow elseを確認します。
複数の条件を簡潔なコードで導入できるExpert Advisorがあれば教えてください。
こんな感じで行くかもしれません。
あるいはこんな感じ。
CHART_FOREGROUNDは 上部のチャート
そして、それを強制しないために、ChartSetIntegerをChartGetIntegerに置き換えてください。
しゃい
こんなこともできるんですね。
あるいはこんな感じ。
そして、ここからが最初の組み立てです。(0, 1, 0, 1)の条件下で、コードの振る舞いはどうなるでしょうか?
If条件の本文を説明してください。
そして、ここからが最初の組み立てです。(0, 1, 0, 1)の条件下で、コードの振る舞いはどうなるでしょうか?
ボディ・オブ・コンディションについて教えてください。
ここはとてもシンプルです。F1==falseであれば、条件f1に関わらず( !F1 || f1)は真となる。
つまり、Fn==trueなら条件fnをチェックし、Fn==falseなら条件fnをチェックしない。
したがって、(0, 1, 0, 1)では、条件f2とf4だけがチェックされ、両方が成立するとopen_pos()のコードが実行されます。
これはとてもシンプルなことです。F1==falseであれば、条件f1に関係なく( !F1 || f1)は真となる。
つまり、Fn==trueなら条件fnをチェックし、Fn==falseなら条件fnをチェックしない。
(0, 1, 0, 1)の場合、条件f2とf4だけがチェックされ、両方が成立するとopen_pos()というコードが実行されます。
ただし、f1などが0や1だけでない場合について。ショートポジションで条件f1が満たされれば、1が返されるのでは?ロングポジションの場合は、2が返されます。条件を全く満たさない場合-0。
しかし、このような構成では、パラメータの値の多様性をあてにせず、他の方法で条件を定式化したほうがいいのではないでしょうか?
ただし、f1などが0や1だけでない場合。ショートポジションで条件f1が満たされた場合、1が返されると考えた。ロングポジションの場合は、2が返されます。条件を全く満たさない場合-0。
しかし、この構成では、このようなパラメータ値の多様性をあてにせず、何か別の方法で条件を定式化した方が良いのではないでしょうか?
ロングとショートの開始条件を別々に考える。
例えば、こんな感じです。
私の本物のコードの一部を販売することもできます。変数の「戦闘」値やポジション保持の条件などの情報がなければ、何のノウハウも見えてきません。
ここで実際に指定できるのは、224種類のオプションのうちの1つです。