MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 170

 
Sergey Gritsay:

CodeBaseに たくさんの例があります。Expert Advisors on pending ordersを探し、コードがどのように書かれているかを見てください。

1時間ほどCodeBaseを 探しましたが、理解できるものは見つかりませんでした。私には複雑すぎるのです。4~6行のコードがいくつかあればいいのですが、コードが大きすぎて私には理解できません。返信ありがとうございます!でも、合わないんです。
 
maxon777:

保留注文を 出す(例:価格が0.7777なら保留注文を出す)。

2) 注文(成行注文)が任意の値になったら閉じる(例:価格が0.6666なら注文を閉じる)。

4〜6行のコードで答えを出す?

と書いているお客様の中にいらっしゃいませんか?たった2行で...。100ポンドってなんだ?

はっきりさせましょう。

まず、0.7777に到達したことを判断する必要があります。頂上まで到達したのでしょうか?ボトム?例えば、前のティックが0.7776で、今のティックが0.7778になった場合、大丈夫でしょうか?この場合、0.7777という値にはなりません。そのため、過去の値と現在の値が必要な値で交わるかどうかを確認する必要があります。それに対応して、前のティックの値を記憶し、現在のティックの値を知っておく必要があります。つまり、ティックの値を取得し、その値を保存して、後で比較するための関数が必要なのです。

さらに価格がどの方向に必要な値を超えるかを知る必要があり、それに対応して必要な価格で必要なタイプの保留注文を設定する必要があります。

設定するには、現在の価格から設定価格を計算し、得られた保留中の注文設定の距離とStopLevelの値を比較し、得られた距離がその値より小さい場合、a) 注文設定の距離をエラー130にならないように修正し、注文を設定するか、b) 設定距離がStopLevelを超えるまで待ち(同じく毎ティック受け取るべき変動スプレッドで)、価格がすでに設定レベルを超えていないか、正しい値であるか、すなわち、StopLevelがすでに設定されているならば注文を設定できる、というものです。е.,そのレベルから離れて注文を出すか、すでに列車が出発してしまっているのです。

また、StopLevelより小さくてはならない保留中の注文のストップ値とテイク値を計算する必要があります(必要であれば修正します)。
すべてのチェックに合格したら、保留中のオーダーを設定するためにサーバーにオーダーを送信し、返信を受ける - 返信にエラーが含まれている場合は、それを処理する(別の関数が必要)...。

保留中の注文が対象です。

クロスを識別し、取引注文を送信し、エラーが発生した場合のサーバーの応答を処理することで、ポジションを閉じる場合とほぼ同じです。


4〜6行で収まるようなら...倉庫でメダルをもらう。;)

 
この説明を受けて、初心者プログラマが 一人減った気がします ))))
 
Andrey Koldorkin:
この説明を受けて、初心者プログラマが 一人減った気がします ))))
 

VALUTAの(.e)は何なのか、説明してください。

 
必要なコードセクションは、設定されたブレークイーブンポイントと価格からの設定されたステップバックから始まる信頼性の高い多通貨トレーリングストップです。
 
Vitaliy29:
コードセクションが必要です - ブレークイーブンポイントと価格からのインデントを設定した信頼性の高い多通貨トレーリングストップ

こちらもチェック! http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=62

Автоматизация торговли на финансовых рынках - Скачать e-Trailing2.rar
  • www.kimiv.ru
Оглавление файлового архива  Разработки на MQL4 Советники   Новая улучшенная бесплатная версия "кимовского трала". Добавлен параметр Magic, позволяющий более гибко отбирать сопровождаемые позиции, а также разделены параметры трала для покупок и продаж. Кроме того, вместо параметра ProfitTrailing теперь используется TrailingStart. Это почти то...
 
Artyom Trishkin:

この問いに答えたいのですね。

1) 任意の値になったら保留注文を 出す(例:価格が0.7777なら保留注文を出す)。

2) 注文(成行注文)が任意の値になったら閉じる(例:価格が0.6666なら注文を閉じる)。

4〜6行のコードで答えを出す?

と書いているトレーダーの方はいらっしゃいませんか?たった2行で...。100ポンドってなんだ?

はっきりさせましょう。

まず、0.7777に到達したことを判断する必要があります。頂上まで到達したのでしょうか?ボトム?例えば、前のティックが0.7776で、現在のティックが0.7778の場合、大丈夫でしょうか?この場合、0.7777という値にはなりません。そのため、過去の値と現在の値が必要な値で交わるかどうかを確認する必要があります。それに対応して、前のティックの値を記憶し、現在のティックの値を知っておく必要があります。つまり、ティックの値を取得し、その値を保存して、後で比較するための関数が必要なのです。

さらに価格がどの方向に必要な値を超えるかを知る必要があり、それに対応して必要な価格で必要なタイプの保留注文を設定する必要があります。

設定するには、現在の価格から設定価格を計算し、得られた保留中の注文設定の距離とStopLevelの値を比較し、得られた距離がその値より小さい場合、a) 注文設定の距離をエラー130にならないように修正し、注文を設定するか、b) 設定距離がStopLevelを超えるまで待ち(同じく毎ティック受け取るべき変動スプレッドで)、価格がすでに設定レベルを超えていないか、正しい値であるか、すなわちストップレベルが設定されていれば、注文を設定できるかを見る必要があります。е.,そのレベルから離れて注文を出すか、すでに列車が出発してしまっているのです。

また、保留中の注文のストップとテイクの値を計算する必要がありますが、これらはストップレベルより低くてはなりません(必要であれば修正します)。
すべてのチェックに合格したら、保留中のオーダーを設定するためにサーバーにオーダーを送信し、返信を受ける - 返信にエラーが含まれている場合は、それを処理する(別の関数が必要)...。

保留中の注文が対象です。

クロスを識別し、取引注文を送信し、エラーが発生した場合のサーバーの応答を処理することです。


4〜6行で収まるようなら...倉庫でメダルをもらう。;)

"何があるんだ "というお客さまですね。ほんの数行なんですが...。100ポンドってなんだ?"いや、私はそういう人ではないし、なぜ私をお客だと思うのか理解できない。私はエキスパートアドバイザーについてのアイデアを持っているので、私はこのプログラムを学びたい、その実装の問題点は、技術的なだけである(と私は問題が非常に大きいことを異論はない)、しかし、私は何かを言うためにしようとしていない "私はすべてのソフトウェアとそれが利益だけで動作することを作る"。逆に、基礎から始めて、初めてExpert Advisorを書きたいと思っています。また、細かいことは考慮せず、非常にシンプルな例がいいと書きましたが(それが非常に重要であることは理解していますが)、どこかから始めなければなりません。私が聞いていることをプロが見るのは苦痛だろうとは思いましたが、それしか知らない以上、どうしようもありません。if else演算子やOrderSend(OrderClose)関数などを使えば、このようなコードを書くことができると思ったのですが、それは無理でした。複雑な用語をたくさん書いて、その結果、私は何もできない、プログラミングのバカだと言われましたが、とにかく知っているのです。私が傲慢な人間だと思わずに、ただ学び続けたいだけなのだと理解してほしい。しかし、あなたの言う通り、妥協点が見つかっていることを期待します。
 
maxon777:
"何があるんだ "というお客さまですね。ほんの数行なんですが...。100ポンドってなんだ?"いや、私はそういう人ではないし、なぜ私をお客だと思うのか理解できない。私はエキスパートアドバイザーについてのアイデアを持っているので、私はこのプログラムを学びたい、その実装の問題点は、技術的なだけである(と私は問題が非常に大きいことを異論はない)、しかし、私は何かを言うためにしようとしていない "私はすべてのソフトウェアとそれが利益だけで動作することを作る"。逆に、基礎から始めて、初めてExpert Advisorを書きたいと思っています。また、細かいことは考慮せず、非常にシンプルな例がいいと書きましたが(それが非常に重要であることは理解していますが)、どこかから始めなければなりません。私が聞いていることをプロが見るのは苦痛だろうとは思いましたが、それしか知らない以上、どうしようもありません。if else演算子やOrderSend(OrderClose)関数などを使えば、このようなコードを書くことができると思ったのですが、それは無理でした。複雑な用語をたくさん書いて、その結果、私は何もできない、プログラミングのバカだと言われましたが、とにかく知っているのです。私が傲慢な人間だと思わずに、ただ学び続けたいだけなのだと理解してほしい。しかし、あなたの言う通り、妥協点が見つかっていることを期待します。

誰もあなたのことを「カモ」だなんて言ってませんよ、そんなこと。なぜなら、人が何かを学ぶということは、すでに何かを試している、何かを書こうとしている、そして明らかに4~6行では収まらないということをすでに見抜いているはずだからです。

何をしようとしたのか、見せてください - 理解する努力をしましょう。

ティックでレベルクロスを探すのではなく、MA(1)で探します。

 
Sahet.Sh:

VALUTAの(.e)は何なのか、説明してください。

これはブローカーへの質問ですので、お気軽にサポートにお問い合わせください。.eの意味は本人にしかわかりませんので、本人が決めることです。一般に、通貨ペアやその他の金融商品の名称の接尾語(接頭語でもある)には、次のような意味があります:ie - 即時執行、m -市場執行、dot - 相場と手数料の5桁、_OP - バイナリオプション取引のための金融商品、...しかし、もちろん、あくまでもブローカーの判断であり、紹介した呼称の意味を把握する最終的な権限は彼にあるのです。