• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MQL4での条件文の書き方)

MQL4での条件文の書き方

このQ&Aのポイント
  • MQL4で条件文を書く際、正しく機能しない場合があります。特に変数を使用した条件文では注意が必要です。
  • 変数の値と数値を比較する場合、変数の前に直接数値を置くと正常に機能します。
  • しかし、変数の値と変数を足し算して比較する場合、正常に機能しないことがあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

うーん、MT4がわからないが、他言語でありがちな 「初期化してないから初期値0を期待してたら、実は値がNullだったので演算結果もNull」じゃないですか? hensu_Cは、本当に0.00ですか?

tokidome
質問者

お礼

回答ありがとうございます。 初期化はしているのですが、本当に0かどうかを確かめるために 毎回「hensu_C」の表示をさせてみたところ「0.01」と表示されました。 しばらく調べてやっとわかったのですが、MT4のインプット(動かす時に値を変更するところ)に 以前0.01を入れていると、プログラムの中で毎回0.00を代入していてもそちらが優先されるようでした。 まだこの仕様がよくは判っていませんが、「0が入っていなかった」が真相でした。 ありがとうございました。

その他の回答 (1)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

MT4を使ったことないけど > if ( hensu_A1 + hensu_C < hensu_B1 && hensu_A2 + hensu_C < hensu_B2) if ( ((hensu_A1 + hensu_C) < hensu_B1) && ((hensu_A2 + hensu_C) < hensu_B2)) だとどうなりますか?

tokidome
質問者

お礼

解決しました、ありがとうございました。

tokidome
質問者

補足

回答ありがとうございます。 ご提案頂いたように()でくくってみましたがだめでした。 というか、最初はもっと条件が複雑だったので、細かくカッコでも囲っていたのです。 しかし正常に動いていないようなので、条件をどんどんと簡略化してチェックしていき、 最終的に質問で書いた部分がダメだということが判ったのです…

関連するQ&A

専門家に質問してみよう