mql4言語の特徴、微妙なニュアンスとテクニック - ページ 19 1...121314151617181920212223242526...35 新しいコメント fxsaber 2019.06.04 14:41 #181 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム ライブラリ: エキスパート fxsaber さん 2019.06.04 16:40 // MT4-советник показывает, в каком режиме Long/Short был запущен. #include <fxsaber\Expert.mqh> // https://www.mql5.com/ru/code/19003 int GetLongShortFlag( const int Chart_ID = 0 ) { MqlParam Params[]; string Names[]; const int Res = EXPERT::Parameters(Chart_ID, Params, Names); return(((Res & 3) << 1) + (Res & 1)); } string LongShortToString( const int Chart_ID = 0 ) { const int Flag = GetLongShortFlag(Chart_ID); string Str = NULL; if ((bool)(Flag & SYMBOL_TRADE_MODE_LONGONLY) && (bool)(Flag & SYMBOL_TRADE_MODE_SHORTONLY)) Str = "Long & Short"; else if ((bool)(Flag & SYMBOL_TRADE_MODE_LONGONLY)) Str = "Only Long"; else if ((bool)(Flag & SYMBOL_TRADE_MODE_SHORTONLY)) Str = "Only Short"; return(Str); } int OnInit() { Alert(LongShortToString()); return(INIT_FAILED); } 代替 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム MQL4、MQL5に関する初心者向けの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 fxsaber, 2019.06.04 19:40 string LongShortToString2() { string Str = "Long & Short"; if (OrderSend(_Symbol, OP_BUY, 1, 0, 0, 0, 0) && (GetLastError() == ERR_LONGS_NOT_ALLOWED)) Str = "Only Short"; else if (OrderSend(_Symbol, OP_SELL, 1, 0, 0, 0, 0) && (GetLastError() == ERR_SHORTS_NOT_ALLOWED)) Str = "Only Long"; return(Str); } いつもうまくいくとは限りませんが、多くの場合、それで十分です。 Artyom Trishkin 2019.07.26 17:36 #182 このトピックに関係のないコメントは、「MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッション」に移動しました。 fxsaber 2019.08.07 16:42 #183 課題は、最小限の労力で、Market Watchからすべてのティックを(損失なく)保存することでした。 Loader-scriptを書き、各シンボルのチャートを開き、その上でindicator-collectorを実行します。 このようなtplファイル(全文)を読み込んでインジケータを実行するのが全体のトリックです。 <chart> <window> <indicator> name=Custom Indicator <expert> name=HistoryTicks_OnlySave </expert> </indicator> </window> </chart> バーがないからいいんです。したがって、それらに資源を費やすことはありません。 一日の終わりには、60枚のチャートがあります。指標は同量。~1分間に〜500Kbのティックが書き込まれます。 RAM ~450Mb、CPU ~3-8% (8 HyperThreading)です。 このようなことをしたい場合は、Market Watchのデータの変化頻度を把握するExpert Advisorを実行することを強くお勧めします。私のEAは3秒以上更新されないと、強制的に再ログインさせられてしまいます。MT4は(MT5も)ネットワークに問題がある場合、10~15秒、時には1分ほどで再ログインすることができます。その時だけ、再ログインそのものが行われます。その10~15秒、あるいは1分の間にティックを失わないために、再接続という作業を行うことをお勧めします。戦闘用TCを搭載した端末も同様です。 Andrey Khatimlianskii 2019.08.07 20:51 #184 fxsaber: 最小限の労力で、Market Watchからすべてのティックを(損失なく)保存することに挑戦しています。 ロスレスですか?この神話はすでに払拭されている。 fxsaber 2019.08.07 21:37 #185 Andrey Khatimlianskii: 負けなし、ですか?その神話はすでに払拭されたと思います。 どうやって自分を納得させたのか、よく覚えていない。MT4で収集した履歴とブローカーでの履歴を比較したのはわかるのですが。100%一致しました。 QBのHistoryTicksというソリューションを使っています。仮想テスターの収集ティックでの結果とMT5テスターのダウンロードしたティックでの結果を比較したところ、100%一致しました。 問題は、接続性によるものとしか考えられません。エキスパート・アドバイザーは、もちろん外れる。指標はそうではありません。 Andrey Khatimlianskii 2019.08.07 22:18 #186 fxsaber: どうやって自分を納得させたのか、よく覚えていない。MT4で収集した履歴とブローカーでの履歴を比較したのはわかるのですが。100%一致したのです。 QBのHistoryTicksというソリューションを使っています。収集したティックでの仮想テスターの結果とダウンロードしたティックでのMT5テスターの結果を比較したところ、100%一致しました。 問題は、接続性によるものとしか考えられません。エキスパート・アドバイザーは、もちろん外れる。指標はそうではありません。 エヘン、あなたの露出の話をしてたんです。 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム エラー、バグ、質問 fxsaber さん 2018.02.26 09:05 3 つのティックのパックが来た場合、Calculate イベントは 3 回呼び出されますが、SymbolInfoTick はその 3 回の呼び出しのそれぞれで最新のティックを返します。つまり、インジケータを通さない、いわゆるティックの収集は、控えめに言っても疑問が残るのです。 何かが変わったのでしょうか? fxsaber 2019.08.07 22:29 #187 Andrey Khatimlianskii: エヘン、あなたの露出の話をしてたんです。 何か変わったことはありますか? CopyTicksをいじっているときに、ティック収集とCopyTicksの結果の比較がありました。 正確には覚えていないが、マッチングがあったのだと思う。 CustomTicksAddでティックを一括追加して見る必要がある。でも、MT5なんです。 MT4の場合はこのように確認することができます。隣り合う2つの記録されたティックは、必ず異なるはずです。そして、サーバー上のバーのティックボリュームは、収集されたティックのバーと一致する必要があります。 2018年の私は、何か賢い方法を知っていたのでしょう。今は思い出せない。 zenz 2019.08.08 09:00 #188 fxsaber: どうやって自分を納得させたのか、よく覚えていない。 MT4で収集した履歴とブローカーでの履歴を比較したのはわかるのですが。100%一致したのです。 QBのHistoryTicksというソリューションを使っています。収集したティックでの仮想テスターの結果とダウンロードしたティックでのMT5テスターの結果を比較したところ、100%一致しました。 問題は、接続性によるものとしか考えられません。エキスパート・アドバイザーは、もちろん外れる。指標はそうではありません。 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム ティックヒストリーを収集するためのアドバイザーを与える ゼンツ 2018.03.07 11:10 9月に比較をしたんです。アルパリ・アーカイブは1週間の発行遅延があるので、今の比較をすると来週までに手に入らない(あまり意味がないと思うし、もう自分でわかったことなので)。 そこで、2017.09.22のスクリーンショットを2枚ご紹介します。ターミナルは、ログを書き込むインジケータだけで、空のコンピュータで動作していた。 OSはXP SP3、端末のバージョンはMT4 build 1090です。Alpari Pro-ECNリアル口座。 左はアルパリ・アーカイブの写真、右はインジケーターが記録した刻みです。 ここで、17秒前と後(16秒と18秒)の刻みが完全に一致していること、すなわちこの場合、時間の非同期化が起こっていないことに気づくかもしれません。繰り返すが、1秒以内に刻みが飛ぶのは、つまり速い刻みだけでなく、「遅い」刻みも飲み込まれるのである。体系的なものは見つかっていません。 解説:アルパリのアーカイブの秒の後のポイントの右側は、マイルでもマイクロ秒でもなく、刻み数になっています(何らかの理由でそうなっています)。 そのスレッドへのリンクはこちらです: https://www.mql5.com/ru/forum/229889/page4#comment_6741502 もう確認していませんが、MT4ではインジケータもEAもティックを見逃すと推測されますが、その後何も変わっていないように思います。 Дайте советник для сбора тиковой истории 2018.03.07www.mql5.com Дайте готовый советник для записи тиков в csv файл... fxsaber 2019.08.08 09:14 #189 zenz: そのスレッドへのリンクはこちらです。https://www.mql5.com/ru/forum/229889/page4#comment_6741502。 もう確認していませんが、MT4ではインジケータもEAもティックを見逃すと推測されますが、その後何も変わっていないように思います。 トレードサーバー側では、この「ミス」したティックが送信されたという確証はない。 zenz 2019.08.08 10:17 #190 fxsaber: トレードサーバー側では、これらの「ミス」ティックが送信されたかどうか、確実ではありません。 私も思案していたのですが、同感です。ただ、その時はいろいろと調べていて、その矛盾が単発ではなく、繰り返し起こることがわかったので、そのままにしておきました。 1...121314151617181920212223242526...35 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
ライブラリ: エキスパート
fxsaber さん 2019.06.04 16:40
代替
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
MQL4、MQL5に関する初心者向けの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。
fxsaber, 2019.06.04 19:40
いつもうまくいくとは限りませんが、多くの場合、それで十分です。
課題は、最小限の労力で、Market Watchからすべてのティックを(損失なく)保存することでした。
Loader-scriptを書き、各シンボルのチャートを開き、その上でindicator-collectorを実行します。
このようなtplファイル(全文)を読み込んでインジケータを実行するのが全体のトリックです。
バーがないからいいんです。したがって、それらに資源を費やすことはありません。
一日の終わりには、60枚のチャートがあります。指標は同量。~1分間に〜500Kbのティックが書き込まれます。
RAM ~450Mb、CPU ~3-8% (8 HyperThreading)です。
このようなことをしたい場合は、Market Watchのデータの変化頻度を把握するExpert Advisorを実行することを強くお勧めします。私のEAは3秒以上更新されないと、強制的に再ログインさせられてしまいます。MT4は(MT5も)ネットワークに問題がある場合、10~15秒、時には1分ほどで再ログインすることができます。その時だけ、再ログインそのものが行われます。その10~15秒、あるいは1分の間にティックを失わないために、再接続という作業を行うことをお勧めします。戦闘用TCを搭載した端末も同様です。
最小限の労力で、Market Watchからすべてのティックを(損失なく)保存することに挑戦しています。
ロスレスですか?この神話はすでに払拭されている。
負けなし、ですか?その神話はすでに払拭されたと思います。
どうやって自分を納得させたのか、よく覚えていない。MT4で収集した履歴とブローカーでの履歴を比較したのはわかるのですが。100%一致しました。
QBのHistoryTicksというソリューションを使っています。仮想テスターの収集ティックでの結果とMT5テスターのダウンロードしたティックでの結果を比較したところ、100%一致しました。
問題は、接続性によるものとしか考えられません。エキスパート・アドバイザーは、もちろん外れる。指標はそうではありません。
どうやって自分を納得させたのか、よく覚えていない。MT4で収集した履歴とブローカーでの履歴を比較したのはわかるのですが。100%一致したのです。
QBのHistoryTicksというソリューションを使っています。収集したティックでの仮想テスターの結果とダウンロードしたティックでのMT5テスターの結果を比較したところ、100%一致しました。
問題は、接続性によるものとしか考えられません。エキスパート・アドバイザーは、もちろん外れる。指標はそうではありません。
エヘン、あなたの露出の話をしてたんです。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
エラー、バグ、質問
fxsaber さん 2018.02.26 09:05
3 つのティックのパックが来た場合、Calculate イベントは 3 回呼び出されますが、SymbolInfoTick はその 3 回の呼び出しのそれぞれで最新のティックを返します。つまり、インジケータを通さない、いわゆるティックの収集は、控えめに言っても疑問が残るのです。
何かが変わったのでしょうか?
エヘン、あなたの露出の話をしてたんです。
何か変わったことはありますか?
CopyTicksをいじっているときに、ティック収集とCopyTicksの結果の比較がありました。
正確には覚えていないが、マッチングがあったのだと思う。
CustomTicksAddでティックを一括追加して見る必要がある。でも、MT5なんです。
MT4の場合はこのように確認することができます。隣り合う2つの記録されたティックは、必ず異なるはずです。そして、サーバー上のバーのティックボリュームは、収集されたティックのバーと一致する必要があります。
2018年の私は、何か賢い方法を知っていたのでしょう。今は思い出せない。
どうやって自分を納得させたのか、よく覚えていない。 MT4で収集した履歴とブローカーでの履歴を比較したのはわかるのですが。100%一致したのです。
QBのHistoryTicksというソリューションを使っています。収集したティックでの仮想テスターの結果とダウンロードしたティックでのMT5テスターの結果を比較したところ、100%一致しました。
問題は、接続性によるものとしか考えられません。エキスパート・アドバイザーは、もちろん外れる。指標はそうではありません。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
ティックヒストリーを収集するためのアドバイザーを与える
ゼンツ 2018.03.07 11:10
9月に比較をしたんです。アルパリ・アーカイブは1週間の発行遅延があるので、今の比較をすると来週までに手に入らない(あまり意味がないと思うし、もう自分でわかったことなので)。
そこで、2017.09.22のスクリーンショットを2枚ご紹介します。ターミナルは、ログを書き込むインジケータだけで、空のコンピュータで動作していた。 OSはXP SP3、端末のバージョンはMT4 build 1090です。Alpari Pro-ECNリアル口座。
左はアルパリ・アーカイブの写真、右はインジケーターが記録した刻みです。
ここで、17秒前と後(16秒と18秒)の刻みが完全に一致していること、すなわちこの場合、時間の非同期化が起こっていないことに気づくかもしれません。繰り返すが、1秒以内に刻みが飛ぶのは、つまり速い刻みだけでなく、「遅い」刻みも飲み込まれるのである。体系的なものは見つかっていません。
解説:アルパリのアーカイブの秒の後のポイントの右側は、マイルでもマイクロ秒でもなく、刻み数になっています(何らかの理由でそうなっています)。
そのスレッドへのリンクはこちらです: https://www.mql5.com/ru/forum/229889/page4#comment_6741502 もう確認していませんが、MT4ではインジケータもEAもティックを見逃すと推測されますが、その後何も変わっていないように思います。
そのスレッドへのリンクはこちらです。https://www.mql5.com/ru/forum/229889/page4#comment_6741502。 もう確認していませんが、MT4ではインジケータもEAもティックを見逃すと推測されますが、その後何も変わっていないように思います。
トレードサーバー側では、この「ミス」したティックが送信されたという確証はない。
トレードサーバー側では、これらの「ミス」ティックが送信されたかどうか、確実ではありません。
私も思案していたのですが、同感です。ただ、その時はいろいろと調べていて、その矛盾が単発ではなく、繰り返し起こることがわかったので、そのままにしておきました。