エキスパートアドバイザー - 雑多な質問 - ページ 14

 

考えるきっかけになる

if(ObjectFind(chart_ID, name) < 0) // check the object does not exist
{
   if( !ObjectCreate( chart_ID, name, OBJ_LABEL, sub_window, 0, 0 ) )
   {
       Print( __FUNCTION__, ": failed to create text label! Error code = ", GetLastError() );
       return(false);
   }
}
 
honest_knave:

考えさせられることがある。

if(ObjectFind(chart_ID, name) < 0) // check the object does not exist
{
   if( !ObjectCreate( chart_ID, name, OBJ_LABEL, sub_window, 0, 0 ) )
   {
       Print( __FUNCTION__, ": failed to create text label! Error code = ", GetLastError() );
       return(false);
   }
}

下のコードより上のコードの方が良いということですか?しかし、私は、エラーの説明を与えてくれる以下のコードが好きです。

if( errorcode !=0 ) printf( "Error %i: %s", errorcode, ErrorDescription( errorcode ) );

// --- 2回目の編集です。

私はテストした、ええ、それはすべての警告、エラーを防ぐことができます。私はあなたのアドバイスは、良いしてください必要がありますか?

男ありがとうございます。

 

すみません、以前のあなたのスニペットから少し貼り付けただけです。エラー処理用の print文は何でもいいのですが、エラーを無視しないようにしましょう。

 

#スプレッド・シート - 終了しました

#スプレッドシートのエラー- 解決済み

たぶん、ちょっと混乱しました。というわけで、以下の方法でやってみました。

if(ObjectFind(chart_ID, name) < 0) // check the object does not exist
{
   if( !ObjectCreate( chart_ID, name, OBJ_LABEL, sub_window, 0, 0 ) )
   {
       if( errorcode !=0 ) printf( "Error %i: %s", errorcode, ErrorDescription( errorcode ) );
   }
}

このような場合は、以下の方法で対応します。

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

Honest_knaveと Marco vd Heijdenに 感謝します。
 

#クローズ・バイ - オープン

私のブローカーは、注文によるクローズ機能を示して いません。そのため、スクリプトで「Close By」することができます。
この場合、何か違法なことが あるのでしょうか?

ありがとうございます。

 
すみません、よくわからないんです。もう少し詳しく説明していただけませんか?
 
honest_knave:
申し訳ありませんが、理解できません。もう少し詳しく説明していただけませんか?

あ!これは私が勘違いしているだけです。
Close byはOpposite Positionの略です。

ご清聴ありがとうございました。

#Close By - 終了しました

 

#continue; - Open

continue;' 演算子は次の関数を 呼び出すのでしょうか?
また、'continue;'はスキップをしているのでしょうか?

MQL4の本で'continue;'について読んだことがあります。そして、それは私にとって明確ではありませんでした。
どなたか解説していただけませんか?

よろしくお願いします。

 

continue 演算子

最も近い外部ループ演算子の先頭に制御を渡す while、do-while または for

 
Marco vd Heijden:

continue 演算子

最も近い外部ループ 演算子の先頭に制御を渡す while、do-while または for

理解できた。でも、練習が必要だなぁ...。
何かやってみようと思います。

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