2点目です。現在のところ、履歴データには価格値が保存されていません。「MQL5 Reference- Access to timeseries and indicators」セクションの表を見てみてください。CopyClose()やCopyLow()などの関数の中に、CopyLast()という関数はありません。従って、価格値からティックキューを生成することは不可能です。
Вы недавно зарегистрировались и у вас возникли вопросы: Как вставить картинку в сообщение на форуме, как красиво оформить исходный код MQL5, где находятся ваши Личные сообщения? В этой статье мы подготовили для вас несколько практических советов, которые помогут быстрее освоиться на сайте MQL5.community и позволят в полной мере воспользоваться доступными функциональными возможностями.
stap:
テストに関する質問なので、以下の点を考慮する必要があります。テスト 時にティックシークエンスが生成されます。4つのチェックポイント(始値、高値、安値、終値)の過去の買値に基づいてティックシーケンスを生成します。したがって、テスターでは、Expert Advisorは、買値に基づいて生成されたティックを処理します。
2点目です。現在のところ、履歴データには価格値が保存されていません。「MQL5 Reference- Access to timeseries and indicators」セクションの表を見てみてください。CopyClose()やCopyLow()などの関数の中に、CopyLast()という関数はありません。従って、価格値からティックキューを生成することは不可能です。
MetaTrader 5のテストの基礎と MetaTrader 5 Strategy TesterのTick Generation Algorithmの 記事も読んでみてください。
テストに関する質問なので...。
まずは、迅速なご返信をありがとうございました。あなたの情報は、理解するために有用であることが判明した。
確認したところ、確かにストップ注文は注文の約定価格と同じ売値と買値が表示される前に発動します(実際に取引している事実があるのです)。
つまり、端末は、実行された取引の価格ではなく、受信したアスクまたはビッドクォートの価格によって、保留中の注文の実行を制御することが判明したのです。少なくとも、EAのテスト モードではそうなっています。間違っていたら訂正してください。
さらに、ちょっとした実験をしてみることにした。タスクは、Expert Advisorのテストに使用可能な過去のアスクとビッドの値を見つけることです。入力:取引所:FORTS、サーバー:ブローカーの一つ、商品:RIH3、期間:12.17~12.03.13、コード付きExpert AdvisorはStrategy Testerでテスト(テストはM1のOHLCモードで行われた)
結果は、面白かった。アスクとビッドのスプレッド値は、異なる時間間隔で10~340ピップスまで一定に等しいことが判明しました。例えば、20.02.13 10:00:00 から 25.02.13 18:49:59 までの1ティックのスプレッドは 140 ポイント、25.02.13 19:00:00 から 26.02.13 18:44:59 までは 30 ポイント、さらに 26.02.13 19:00 から 18:49:59 まで1ティックで270ポイント等です。もちろん私は株式市場のマンモスではありませんが、流動性のあるRTS先物で140、270pips以上のスプレッドは希少です。
つまり、Strategy TesterでExpert Advisorをテストする場合、MT5ターミナル/ブローカー/証券取引所(他は知らない)は、確かに過去のAskとBid価格を提供しない、というのが私の唯一の結論である。
それゆえ、2つの疑問が生じる。
1.EA(=トレーディング戦略)のテストモードにおいて、実際の値とは異なるアスク価格とビッド価格を使用して保留中の注文が実行される場合、確実にテストするにはどうすればよいですか?FORTSのQuikという端末で作業する場合、保留中の注文はAskやBidの価格(つまり取引に使用しない価格。 例えば流動性の低い商品の場合、スライダーに大きなスプレッドがある価格を送ることができる)では動作せず、注文に執行価格として記載されている価格で実際の取引が行われる場合のみ、という確固たる考えを持っています。
2.テストモードでのアスクとビッドの価格が歴史的に信頼できないとしたら、リアルトレードモードでの未決済注文の執行はどのような価格でモニターされるのでしょうか - アスクとビッドの価格でもです。取引所から送られてくるなど、本物で信頼できるものですか?ターミナルマニュアルに「"取引所取引 "モードのシンボルにおけるすべての注文タイプの約定は、Last price(最後に約定した取引の価格)で行われます」と記載されている場合、取引所取引モードのシンボルのテストモードでは、そのプロパティで保留中の注文が買値と売値で執行されるのはなぜですか。それとも、テストモードのみで、実際の取引では、マニュアルに記載されているように、実際に行われた取引の価格で、保留中の注文が制御/実行されるのでしょうか?
書きすぎて申し訳ないです、私の考えを共有しようと思いました、もしかしたら誰かが歴史の役に立つかもしれないので・・・。
ロシア株式市場向けのプラットフォーム版がないため、取引所執行モードでの端末の動作をまだ追っていないのはご存知の通りです。しかし、交換実行モードでの端末の 操作と、交換実行モードでのテスターの 操作についての質問は、すぐに分けて提案することができますね。
ターミナルが為替執行モードで動作しているときに、「すべての注文タイプが 最後の価格で動作する」という記述の正しさを確認するには、(まだ良い方法を思いつきませんが)現在の相場の上下にいくつかの保留中の注文を 置き、上記のコードも実行してみてください。そして、どの価格(ビッド、アスク、ラスト)で注文が執行されたかを視覚的に追跡するようにします。
歴史的なアスクの価値観」というのは、ちょっと正しくないですね。昨日、ある保存された入札値に基づいてティックシリーズが生成されることを書きました。一方、アスク値は、ビッド値とスプレッド値に基づいてモデル化されている可能性が高い。例えば、M1のOHLCモードでテストしていただいたように、ここでは単純にask==bid+spreadとなります。
私はRTS先物の性質を知らないので、「pips」のスプレッドについてはコメントできないのです。しかし、例えばEURUSDの場合、1ポイントは0.00001です。
よりシンプルにするのか。開発者は、あなたの状況に応じた正しい答えを知っています。そこで、プロフィールの「サービスデスク」セクションを探し、取引所執行モードで保留中の注文を 最終価格で処理する可能性を導入するよう依頼してください(MT5のマニュアルに従います)。自分の状況を少し説明して、反応を見る。もしかしたら、私たちの前にすでにすべてが考えられているのかもしれませんね :)
洞察に満ちたコメントとアドバイスをありがとうございました
ブローカーのBCSとOtkritieは、すでにMT5ターミナルを介してロシアの証券取引所(今のところFORTSの先物・オプション市場のみ)で取引を行う可能性を提供しています。
プライベート メッセージにブロックを入れるにはどうすればよいですか?
自分から?))
あなたからは、信号待ちでPCを起動して、また舐めるように見るのではなく