Скальперские автоматические системы по праву считаются вершиной алгоритмического трейдинга, но при этом они же являются и самыми сложными для написания кода. В этой статье мы покажем, как с помощью встроенных средств отладки и визуального тестирования строить стратегии, основанные на анализе поступающих тиков. Для выработки правил входа и...
MqlTick Prev_Tick(ulong t) { // t - время в миллисекундахMqlTick ticks[];
int bar =iBarShift(_Symbol,PERIOD_M1,t/1000);
if (bar>=0 && CopyTicksRange(_Symbol,ticks,COPY_TICKS_ALL,iTime(_Symbol,PERIOD_M1,bar)*1000,t)>0)
return ticks[ArraySize(ticks)-1];
else {
MqlTick tick; // если до заданного времени нет тиков возвращаем пустой тик.return tick;
}
}
intCopyTicks(
string symbol_name, // имя символа MqlTick& ticks_array[], // массив для приёма тиков uint flags=COPY_TICKS_ALL, // флаг, определяющий тип получаемых тиков ulong from=0, // дата, начиная с которой запрашиваются тики uint count=0// количество тиков, которые необходимо получить
);
count パラメータが int で、その関数が負のカウント値、すなわち逆方向のカウント値をサポートする場合。
コードベースに関する質問は、より適切なスレッドがあれば、そちらに移動してください。これらの「バグ」は長すぎて、おそらくMQはあまりよく読んでいないのでしょう。
そんな悩み。MQL Wizardのために、標準ライブラリに 付属する限られたセットではなく、ユーザーによってカスタマイズ可能で、任意の指標を使用するユニバーサルシグナルを生成するモジュールを公開したいのです。新しいモジュールを使って生成したExpert Advisorをmq5コードで添付します。しかし、モジュールのポイントはカスタマイズにあるので、もちろんハードコードされた信号はありません。その結果、Expert Advisorは取引も自動検証も行われない。
問題解決のための選択肢は?
コードベースに関する質問は、より適切なスレッドがあれば、そちらに移動してください。これらの「バグ」は長すぎて、おそらくMQはあまりよく読んでいないのでしょう。
そんな悩み。MQL Wizardのために、標準ライブラリに 付属する限られたセットではなく、ユーザーによってカスタマイズ可能で、任意の指標を使用するユニバーサルシグナルを生成するモジュールを公開したいのです。新しいモジュールを使って生成したExpert Advisorをmq5コードで添付します。しかし、モジュールのポイントはカスタマイズにあるので、もちろんモジュール内にハードコードされた信号はありません。その結果、Expert Advisorは取引も自動検証も行われない。
問題解決のための選択肢は?
私はEAの時間差注文を回避して、mt4のOnInit.でSLとTPを指定して注文を出しました。私は半年前にバリデーションに合格しました。
また、テスターにあれば注文を出し、なければ飛ばすという条件も設定しました。検証はテスターで行う。
コードベースに関する質問は、より適切なスレッドがあれば、そちらに移動してください。これらの「バグ」は長すぎて、おそらくMQはあまりよく読んでいないのでしょう。
そんな悩み。MQL Wizardのために、標準ライブラリに 付属する限られたセットではなく、ユーザーによってカスタマイズ可能で、任意の指標を使用するユニバーサルシグナルを生成するモジュールを公開したいのです。新しいモジュールを使って生成したExpert Advisorをmq5コードで添付します。しかし、モジュールのポイントはカスタマイズにあるので、もちろんハードコードされた信号はありません。その結果、Expert Advisorは取引も自動検証も行われない。
問題解決のための選択肢は?
しかし、デフォルトではこれらのパラメータは自動的に設定されず、手動で選択するためのメニュー項目がテスターに追加されるだけであることがわかりました。
ランチャーのラッパーを#property tester_setディレクティブを使って作ることができると思ったのですが、デフォルトではこれらのパラメータを自動的に設定せず、手動で選択するためのメニュー項目をテスターに追加するだけであることがわかりました。
また、#property tester_file ディレクティブ "DefaultSettings.tpl" を試してみました。指定されたファイルはルートフォルダ内のエージェントにコピーされますが、自動的には適用されません(少なくともExpert Advisorの設定に関しては)。
商品評価、投票数、レビューは説明文の中に存在するが、マーケットプレイスには表示されない https://www.mql5.com/en/market/
テスターはEA最適化 中に新しい実行ごとに「設定」タブに切り替わりますが、エージェントの状態を制御する方法はなく、ただ別のタブに逃げてしまいます。今日気がついたのですが、現在ビルド2697です。
ローカルエージェントに偏った数のタスクを配布し、そのうちのどれもが実行されない
何かアイデアはありますか?
CopyTicksで指定時間前のティックを取得する方法は?
まあ、ウィンドウの最大バーが無制限ならね。
というようなことなのでしょう。
を確認したが、偏りはなかった。
バイパスバー(iBarShift)の場合、時間が週末に当たった場合、最も近いティックを見つけることは非常にコストがかかる可能性があります。
バー(iBarShift)を使用しない場合、時間が週末にかかると、最も近い目盛りを見つけるのにかなりのコストがかかることがあります。
そう、右の刻みは初歩的なもの、左の刻みは恐ろしいものです。
そう、右のダニは初歩的、左のダニは恐ろしいのです。
うん。
足りないのは、関数内で
count パラメータが int で、その関数が負のカウント値、すなわち逆方向のカウント値をサポートする場合。