MQL5言語をゼロから独学で学ぶ - ページ 23

 
Aliaksandr Hryshyn:

出だしが悪かったな。コードの内容をすべて理解しているか?すべての演算子、キーワード?

コードに関する質問を確認する。

この線は何を意味しているのでしょうか?

以上、台本に対するコメントでした。

/* 移動します。取引サーバーにリクエストを送信した後、保留中の注文が
に設定されたかどうかを知る必要があります。そのために、取引サーバーにリクエストを送信して
取引操作を 行うための OrderSend 関数を使用しましょう。
へのリクエスト送信が失敗した場合(関数の前に感嘆符がある場合は、その関数の実行結果が否定的であることを示す
)、次の形式でエラーコードを含むメッセージを出力する: "OrderSend error %d"
と GetLastError().OrderSend error %d "とは何か、GetLastError()とは何か、理解しましょう。
OrderSend error %d" はダブルクォーテーションで囲まれていることに注意してください。これは、
が、"OrderSend error %d "という直訳のテキストを表示することを意味します。では、
%d の意味を理解しましょう。MQL5 ReferenceのPrintFormatの項には、「フォーマット文字列の後にさらにパラメータが続く場合、
、この文字列にはこれらのパラメータの出力形式を定義するフォーマット指定が含まれていなければならない」と書かれています。
フォーマット指定は常にパーセント記号(%)で始まる".dとは?同じセクション
のすぐ下に、「タイプ d - 出力される最小桁数を指定する」とあります。
の桁数が指定された精度より小さい場合,出力値の左にゼロがパディングされる。
出力する桁数が指定された精度より大きい場合、出力値は切り捨てられない。この
は解決したので、次は GetLastError() が何であるかを理解する必要があります。
再び参考書を見ると、「GetLastError()
、システム変数_LastErrorの内容、つまりmql5プログラムの実行中に発生した最後のエラーの値が格納されている変数が返されます。

ウラジミールさん、ありがとうございます。

 
MrBrooklin:

だから、まだ解明できていないし、やるべきこともある。

ウラジミールさん、ありがとうございます。

ここでも、あなたのコードが何をするものなのかの説明から始めます。このスクリプトは、ポジションにSLとTPを設定します。あるかどうか分からないので、ポジションはあると仮定して、両方ある(ヘッジ勘定)。ストップをかけるという条件は必ず真に迫る...。つまり、こういうことです。コードを最後まで通して作業する。))))

そして、コードのすべての行を理解するようにしてください。最初から

 
Реter Konow:
この条件は、そこではまったく必要ありません。どのような役割を担っているのでしょうか。説明できますか?

保留中の 買い逆指値注文と 売り逆指値注文を設定 するための隠し 条件を設定したいと思いました。

ウラジミールさん、ありがとうございます。

Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
MrBrooklin:

さらに数回チェックしました。コンパイラは何も出しません。

ウラジミールさん、ありがとうございます。

そして、なぜそれが何かを生み出さなければならないのか。マクロを知らない、マクロの扱い方を知らない、でもマクロを使う、だからマクロから何らかのエラーや少なくとも警告が出ることを期待する。少なくとも一度でもデモでスクリプトを起動し、すべてのモードで実行したことがあれば、うまくいかないことがわかったはずです。しかし、あなたはさらに踏み込みます。ストップロス、テイクプロフィットを追加し、海岸では「マシンを止めろ!」と言われる。

 
Valeriy Yastremskiy:

ここでも、あなたのコードが何をするものなのかを説明することから始めましょう。このスクリプトは、あなたが置いたポジションにSLとTPを設定します。いるかどうか分からないので、ポジションがあると仮定して、両方ある(ヘッジ勘定)。ストップをかけるという条件は必ず真に迫る...。つまり、こういうことです。コードを最後まで通して作業する。))))

そして、コードのすべての行を理解するようにしてください。最初から

最初にオープンポジションが あるかどうかを確認するというアドバイスをありがとうございました。

ウラジミールさん、ありがとうございます。

 
MrBrooklin:

保留中の 買い逆指値注文と 売り逆指値注文を設定 するための隠し 条件を設定したいと思いました。

敬具 ウラジミール

教えてください、そのためのマクロを書くことは、そのような条件を設定する唯一の方法なのでしょうか?条件は、私の理解では、マクロで設定するだけ?それとも、別の方法で可能なのでしょうか?また、他に方法があるとすれば、なぜこのマクロを選んだのでしょうか?何か必然性があったのでしょうか?しかし、それは何だったのか?

 
MrBrooklin:

まず空きが あるかどうかを確認するというアドバイスをありがとうございました。

ウラジミールさん、ありがとうございます。

今、やっても無駄だ。まだ早いんだよ。早すぎるんだよ。ムズムズしたり、疲れたり、全てを諦めてしまう。教科書や簡単な問題に戻る。
 
Vasiliy Sokolov:

この条件を設定するためには、マクロを書くしかないのでしょうか?私の理解では、条件はマクロによってのみ設定されるのですか?それとも何か他の方法があるのでしょうか?また、他に方法があるとすれば、なぜマクロを選択したのでしょうか?何か必然性があったのでしょうか?しかし、それは何だったのか?

いや、必然性はなく、単にモディファイアを勉強しているときに#defineを見つけて、スクリプトで試してみようと思っただけなのですが。

敬具 ウラジミール

 
MrBrooklin:

保留中の 買い逆指値注文と 売り逆指値注文を設定 するための隠し 条件を設定したいと思いました。

ウラジミールさん、ありがとうございます。

隠された条件」とは何でしょうか?このような条件は、プログラミングには存在しない。
 
Vasiliy Sokolov:

...一度でもデモでスクリプトを動かして、すべてのモードで実行すれば、うまくいかないことがわかると思うんですけどね。でも、もう一歩踏み込んでいるんですね。ストップロスとテイクプロフィットを追加すると、岸はすでにこう叫んでいます。"車を止めろ!"と。

Vasiliy、私はスクリプトを複数回実行し、すべてのモードが動作します、すなわち、私は指定した距離で2つの保留中の注文買いストップと売りストップを配置します。ストップロスとテイクプロフィットも必要な距離に設定されています。オーダーが効く。ここでスクリーンショットを添付したいと思います。

ウラジミールさん、ありがとうございます。


理由: