Для получения текущей рыночной информации служат функции SymbolInfoInteger(), SymbolInfoDouble() и SymbolInfoString(). В качестве второго параметра этих функций допустимо передавать один из идентификаторов из перечислений ENUM_SYMBOL_INFO_INTEGER, ENUM_SYMBOL_INFO_DOUBLE и ENUM_SYMBOL_INFO_STRING соответственно. Некоторые символы (как...
印刷しようとしているものは、正しくありません。正しくはこうです。
その内訳は以下の通りです。
42 は数値識別子:ACCOUNT_MARGIN_FREE
つまり、定数からフリーマージンを求めることができます。
または、その数値の識別子で。
AccountInfoDouble(42)
ありがとうございました。
その内訳は以下の通りです。
42 は数値識別子:ACCOUNT_MARGIN_FREE
つまり、定数からフリーマージンを求めることができます。
または、その数値の識別子で。
ありがとうございました。
最初のバージョンのライティングは、より情報量が多い。
https://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants
愚問かもしれませんが、これらの関数はMQL4で使用できるのでしょうか?ただ、MQL4のツールはより限定的です。
MQL4でデータを取得する方法。
シンボル_セッション_ディール
現在のセッションの取引数
シンボル_セッション_買い注文
現時点での買い注文の総数
長
シンボル_セッション_セル_オーダー
現時点での売り注文の総数
長
SYMBOL_VOLUME(シンボルボリューム
数量 - 直近の取引数量
長
シンボルボリューム高
その日の最大音量
長
シンボルボリュームロー
当日の最小出来高
SYMBOL_BID
入札-ベストビッド
二重
SYMBOL_BIDHIGH
当日の最大落札額
二重
SYMBOL_BIDLOW
当日の最低落札価格
二重
SYMBOL_ASK
アスク - ベストビッド
二重
SYMBOL_ASKHIGH
当日の最大アスク
二重
SYMBOL_ASKLOW
当日のミニマムアスク
シンボル_セッション_ボリューム
現在のセッションの総取引量
二重
シンボル_セッション_ターンオーバー
当四半期の総売上高
二重
シンボル_セッション_インタレスト
オープンポジションの総量
二重
シンボル_セッション_買い注文_ボリューム
現時点での買い注文の総量
二重
シンボル_セッション_販売注文_ボリューム
現時点での売り注文の総量
二重
シンボル_セッション_オープン
セッション開始価格
二重
symbol_session_close
クローズ価格
二重
有用なデータが一挙に集まる宝の山です。問題は、それをMQL4でどうやるかだ。 なぜMQL5を勉強しないのかというと、MQL5の方が機能が充実しているからです。単純なことです。すべてのブローカーが対応しているわけではありません。現時点ではまだMQL4が最も人気があり、需要もあります。
https://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants
愚問かもしれませんが、これらの関数はMQL4で使用できるのでしょうか?ただ、MQL4のツールはより限定的です。
MQL4でデータを取得する方法。
ワンクリックで役立つデータの宝庫です。しかし、MQL4ではどうすればいいのか。この記事では、MQL5で勉強するための準備のコツも紹介します。単純なことです。すべてのブローカーが対応しているわけではありません。現時点ではまだMQL4が最も人気があり、需要もあります。
mql4のドキュメントでは、動作しないものはすべてマークされています。
SYMBOL_BID
入札-ベストビッド
二重
SYMBOL_BIDHIGH
非対応
二重
SYMBOL_BIDLOW
非対応
二重
SYMBOL_ASK
Ask - best offer to buy
二重
SYMBOL_ASKHIGH
非対応
二重
SYMBOL_ASKLOW
非対応
二重
シンボルラスト
非対応
二重
シンボル_ラストハイ
非対応
二重
SYMBOL_LASTLOW
非対応
二重
SYMBOL_POINT
一点値
二重
これはテーブル全体ではありません。ドキュメントに複数あるので、F1キーを押して読んでみてください。
mql4のドキュメントでは、動作しないものにはすべてマークが付けられています。
ログ行:
2019.11.16 12:38:40.660 2019.01.02:35:00 ストップを計算するには、ブローカーから値=30を取る
2019.11.16 13:20:18.791 2019.01.01.02:03:00 Open order: Price = 1.14595, Stop Loss = 1.14565, Take Profit = 1.14625
2019.11.16 13:20:18.791 2019.01.02 02:03:00 failed instant buy 0.01 EURUSD at 1.14595 sl: 1.145.00.14565 tp: 1.14625 [invalid stops]
2019.11.16 13:20:18.792 2019.01.02:03:00CTrade::OrderSend: instant buy 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14525 tp: 1.14625 [invalid stops]
そして、このケースを少し分かりやすく説明すると、
注文を出す前のコードで、次のように計算します:
価格 = 注文に応じて、買うべき最高の市場価格、この場合は買いです。
SL = 右ストップを計算(ブローカーは価格から少なくとも30単位のストップを許可)すなわち
価格 (1.14595) - 0.0003 = SL (1.14565)
TP = 右ストップを計算(ブローカーは価格から少なくとも30単位を許可)すなわち
価格 (1.14595) + 0.0003 = TP (1.14625)
まあすべてが正しく見える、私は30点を保持しているが、私は設定エラーが表示されます。
SL = 0とすれば、すべてOKで、オーダーとTPが設定されます。
SLの計算でエラーが出るのですが、どこがエラーなのでしょうか?
ストップロスを正しく設定できないのですが、教えてください。
ログラインです。
2019.11.16 12:38:40.660 2019.01.02 02:35:00 ストップを計算するには、ブローカーからの値 = 30 を取る。
2019.11.16 13:20:18.791 2019.01.02 02:03:00 注文を開く:価格=1.14595、ストップロス=1.14565、テイクプロフィット=1.14625
2019.11.16 13:20:18.791 2019.01.02 02:03:00 失敗した瞬間買い 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14625 【無効なストップ】。
2019.11.16 13:20:18.792 2019.01.02 02:03:00 CTrade::OrderSend: instant buy 0.01 EURUSD at 1.14595 sl: 1.14565 tp: 1.14625 [invalid stops] (ストップは無効です。
そして今、この事件のためにいくつかの明確化。
コードでは、注文を開く前に計算しています。
price = 注文に応じた最適な市場価格、この場合は買い。
SL = 右のストップを計算する(ブローカーは価格から少なくとも30単位離れたストップが可能)、すなわち。
価格 (1.14595) - 0.0003 = SL (1.14565)
TP = 正しいストップを計算する(ブローカーは価格から少なくとも30単位離れたところでストップすることを許可しています)。
価格 (1.14595) + 0.0003 = TP (1.14625)
さて、すべてが正しいように見える、私は30ピップを保持しますが、私は設定エラーが表示されます。
SL=0とし、それで全てOK、オーダーとTPが設定されました。
SLの計算ミスであることが判明したが、どこがミスなのか?
どのような価格ですか?
どのような価格ですか?
購入時 価格=SYMBOL_ASK
発売価格=SYMBOL_BID
購入時 価格=SYMBOL_ASK
販売価格=SYMBOL_BIDの場合
スプレッドを追加してみましたか?
スプレッドを追加してみましたか?
このように修正しました。