MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 549 1...542543544545546547548549550551552553554555556...1953 新しいコメント HeAic 2018.05.13 11:22 #5481 a < b && ( c > d1 || c >d2 || c > d3) というコードの省略構成は正しいか? 書かないようにするためです。(a < b && c > d1) || (a < b && c > d2) 等を何度も繰り返す。 Ihor Herasko 2018.05.13 11:35 #5482 HeAic:a < b && ( c > d1 || c >d2 || c > d3) というコードの省略構成は正しいか? 書かないようにするためです。(a < b && c > d1) || (a < b && c > d2) といった具合に何度も繰り返されます。もちろん、うまくいきますよ。このような大きな構図を書くときは、優先順位の括弧を明示的に指定することくらいでしょう。 (a < b) && ( c > d1 || c >d2 || c > d3) MT4/5コンパイラの場合、既存の優先順位では式の結果を別の方法で計算することができないため、指定されたブラケットを使用せずに行うことができます。しかし、この括弧には2つの利点がある。 優先順位を問うことなく、視覚的に理解しやすい表現になっています(コンパイラごとの優先順位を覚えてはいけません)。もしコードが別のコンパイラに移され、そのコンパイラの優先順位が異なっても、コードは現在のコンパイラと同じように動作します。 lil_lil 2018.05.14 07:54 #5483 Alexey Viktorov:ありがとうございます、もし S_sk= SymbolInfoInteger("EURUSD",SYMBOL_SELECT); マーケットウォッチにシンボルがないのですが、どうすれば追加できますか? Artyom Trishkin 2018.05.14 08:09 #5484 lil_lil:ありがとうございます、もしマーケットウォッチにシンボルがないのですが、どうすれば追加できますか?シンボルセレクト(SymbolSelect) 全てはヘルプに書いてあります。関数名にカーソルを合わせてF1 lil_lil 2018.05.14 08:19 #5485 Artyom Trishkin:シンボルセレクト(SymbolSelect) 全てはヘルプの中にある。関数名にカーソルを合わせてF1ありがとうございます。 iv1986 2018.05.14 09:56 #5486 その理由は何でしょうか。MT5で指値注文を設定するスクリプトを書きました。ターミナルでチャートに送ると、result.retcodeが10009(注文が実行された)を返すが、注文は設定されていない。 Ihor Herasko 2018.05.14 10:17 #5487 iv1986:その理由は何でしょうか。MT5で指値注文を設定するスクリプトを書きました。ターミナルでチャートに送ると、result.retcodeが10009(注文が実行された)を返すが、注文は設定されていない。コードログです。ステイトメントどこにあるんだろう? iv1986 2018.05.14 10:31 #5488 Ihor Herasko: コードログブックステートメントどこにあるんだろう?{MqlTradeRequest request={0};MqlTradeResult result={0};double Bid=SymbolInfoDouble(Symbol(),SYMBOL_BID);double Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);int digits=SymbolInfoInteger(_Symbol,SYMBOL_DIGITS);double p=NormalizeDouble(ChartPriceOnDropped(),digits);if( SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE)==10){p=MathRound(ChartPriceOnDropped()*0.1)/0.1;}int V=75;if (p<Ask){request.action =TRADE_ACTION_PENDING; // 取引操作の種類request.symbol =Symbol(); // シンボルrequest.volume =MathFloor(AccountInfo Double(ACCOUNT_BALANCE)/V/((Ask-p)/))SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE)*SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE)) を参照してください。if (request.volume>AccountInfoDouble(ACCOUNT_BALANCE)/SymbolInfoDouble(_Symbol,SYMBOL_MARGIN_INITIAL))。{ request.volume=MathFloor(AccountInfoDouble(ACCOUNT_BALANCE)/SymbolInfoDouble(_Symbol,SYMBOL_MARGIN_INITIAL));}request.type =ORDER_TYPE_BUY_LIMIT; // 注文の種類request.price =NormalizeDouble(Ask-SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE),digits); // 開始する価格request.deviation=50; // 価格からの許容偏差値request.sl =p; // ストップロス・ポジションrequest.tp =NormalizeDouble(Ask+(Ask-p)*3,digits); // 利益確定の位置request.type_filling=ORDER_FILLING_IOC;request.type_time=ORDER_TIME_DAY。request.stoplimit=Ask;OrderSend(request,result)を実行します。}if (p>Bid){request.action =TRADE_ACTION_PENDING; // 取引操作の種類request.symbol =Symbol(); // シンボルrequest.volume =MathFloor(AccountInfo Double(ACCOUNT_BALANCE)/V/((p-Bid)/))SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE)*SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_VALUE)) を参照してください。if (request.volume>AccountInfoDouble(ACCOUNT_BALANCE)/SymbolInfoDouble(_Symbol,SYMBOL_MARGIN_INITIAL))。{ request.volume=MathFloor(AccountInfoDouble(ACCOUNT_BALANCE)/SymbolInfoDouble(_Symbol,SYMBOL_MARGIN_INITIAL));}// ボリュームrequest.type =ORDER_TYPE_SELL_LIMIT; // 注文の種類request.price =NormalizeDouble(Bid+SymbolInfoDouble(_Symbol,SYMBOL_TRADE_TICK_SIZE),digits); // オープンするときの価格request.deviation=50; // 価格からの許容偏差値request.sl =p; // ストップロス・ポジションrequest.tp =NormalizeDouble(Bid-(p-Bid)*3,digits); // テイクプロフィットの位置request.type_time=ORDER_TIME_DAY。request.type_filling=ORDER_FILLING_IOC;request.stoplimit=Bid;OrderSend(request,result)を実行します。} ログによると: 2018.05.14 10:12:38.187 トレード '992940': 売り指値 3.00 Si-6.18 at 62066 (62065) sl: 62331 tp: 61267 placed for execution. Any questions from newcomers エラー、バグ、質問 MetaEditor build 1490 Ihor Herasko 2018.05.14 10:41 #5489 iv1986: ログによると: 2018.05.14 10:12:38.187 トレード '992940': 売り指値 3.00 Si-6.18 at 62066 (62065) sl: 62331 tp: 61267 placed for execution. これは一般的なログに書かれています。そして、「エキスパート」のログには何が書かれているのでしょうか?しかも、1行だけでなく、ログ全体が。鍵穴から見えるものは、あまりありません。 その上、引用されたコードにリターンコードのチェックがない。そのため、何を根拠にエラーコードに関する結論が出ているのかが不明です。 何かをアドバイスするためには、(自分が見たものを)明確に再現できる手順が必要ですが、ここにはそれがありません。コードの問題部分を切り取り、自分で実行して、何が失敗しているのかを正確に示してください。 P.S.コードを挿入 するには、「</>」アイコンまたはAlt+Sを使用してください。 iv1986 2018.05.14 11:12 #5490 コードの最後には、Alert(result.retcode)もあります。 を一般ログで表示します。 2018.05.14 12:08:16.984 スクリプト スクリプト LIMIT (Si-6.18,M15) の読み込みに成功しました。 2018.05.14 12:08:17.187 トレード '992940': Buy limit 3.00 Si-6.18 at 62091 (62092) sl: 61821 tp: 62905.2018.05.14 12:08:17.484 Trades '992940': accepted buy limit 3.00 Si-6.18 at 62091 (62092) sl: 61821 tp: 62905.2018.05.14 12:08:17.500 トレード '992940': Buy limit 3.00 Si-6.18 at 62091 (62092) sl: 61821 tp: 62905 placed for execution.2018.05.14 12:08:17.546 Trades '992940': order #13235300 buy limit 3.00 / 3.00 Si-6.18 at 62091 done in 337.532 ms2018.05.14 12:08:17.578 スクリプト スクリプト LIMIT (Si-6.18,M15) を削除しました。 エキスパート欄: 2018.05.14 12:08:17.578 LIMIT (Si-6.18,M15) アラート:10009、他は何もなし。 Any questions from newcomers フォルツァ執行上の問題点 オープナーでサーバーバージョン 1...542543544545546547548549550551552553554555556...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
a < b && ( c > d1 || c >d2 || c > d3) というコードの省略構成は正しいか?
書かないようにするためです。(a < b && c > d1) || (a < b && c > d2) 等を何度も繰り返す。
a < b && ( c > d1 || c >d2 || c > d3) というコードの省略構成は正しいか?
書かないようにするためです。(a < b && c > d1) || (a < b && c > d2) といった具合に何度も繰り返されます。
もちろん、うまくいきますよ。このような大きな構図を書くときは、優先順位の括弧を明示的に指定することくらいでしょう。
MT4/5コンパイラの場合、既存の優先順位では式の結果を別の方法で計算することができないため、指定されたブラケットを使用せずに行うことができます。しかし、この括弧には2つの利点がある。
ありがとうございます、もし
マーケットウォッチにシンボルがないのですが、どうすれば追加できますか?
ありがとうございます、もし
マーケットウォッチにシンボルがないのですが、どうすれば追加できますか?
シンボルセレクト(SymbolSelect)
全てはヘルプに書いてあります。関数名にカーソルを合わせてF1
シンボルセレクト(SymbolSelect)
全てはヘルプの中にある。関数名にカーソルを合わせてF1
ありがとうございます。
その理由は何でしょうか。MT5で指値注文を設定するスクリプトを書きました。ターミナルでチャートに送ると、result.retcodeが10009(注文が実行された)を返すが、注文は設定されていない。
その理由は何でしょうか。MT5で指値注文を設定するスクリプトを書きました。ターミナルでチャートに送ると、result.retcodeが10009(注文が実行された)を返すが、注文は設定されていない。
}
ログによると: 2018.05.14 10:12:38.187 トレード '992940': 売り指値 3.00 Si-6.18 at 62066 (62065) sl: 62331 tp: 61267 placed for execution.
ログによると: 2018.05.14 10:12:38.187 トレード '992940': 売り指値 3.00 Si-6.18 at 62066 (62065) sl: 62331 tp: 61267 placed for execution.
これは一般的なログに書かれています。そして、「エキスパート」のログには何が書かれているのでしょうか?しかも、1行だけでなく、ログ全体が。鍵穴から見えるものは、あまりありません。
その上、引用されたコードにリターンコードのチェックがない。そのため、何を根拠にエラーコードに関する結論が出ているのかが不明です。
何かをアドバイスするためには、(自分が見たものを)明確に再現できる手順が必要ですが、ここにはそれがありません。コードの問題部分を切り取り、自分で実行して、何が失敗しているのかを正確に示してください。
P.S.コードを挿入 するには、「</>」アイコンまたはAlt+Sを使用してください。
コードの最後には、Alert(result.retcode)もあります。
を一般ログで表示します。
2018.05.14 12:08:16.984 スクリプト スクリプト LIMIT (Si-6.18,M15) の読み込みに成功しました。
2018.05.14 12:08:17.187 トレード '992940': Buy limit 3.00 Si-6.18 at 62091 (62092) sl: 61821 tp: 62905.
2018.05.14 12:08:17.484 Trades '992940': accepted buy limit 3.00 Si-6.18 at 62091 (62092) sl: 61821 tp: 62905.
2018.05.14 12:08:17.500 トレード '992940': Buy limit 3.00 Si-6.18 at 62091 (62092) sl: 61821 tp: 62905 placed for execution.
2018.05.14 12:08:17.546 Trades '992940': order #13235300 buy limit 3.00 / 3.00 Si-6.18 at 62091 done in 337.532 ms
2018.05.14 12:08:17.578 スクリプト スクリプト LIMIT (Si-6.18,M15) を削除しました。
エキスパート欄: 2018.05.14 12:08:17.578 LIMIT (Si-6.18,M15) アラート:10009、他は何もなし。