MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1326

 
DanilaMactep:

ビデオチュートリアルで、このような変数が 問題なく 変更されているのを何度も見た ことがあります。

私も見てみたいのですが、リンクは張れますか?

DanilaMactep:

本当の意味での明確で賢明なアドバイスをお願いします。

投稿番号:13247

 

フルネームでない名前でオブジェクトを探す方法を教えてください。

インジケータはオブジェクトを作成し、それに名前を付けます

HlineCreate(0,"Min"+rand(),...);

オブジェクトを検索し、その価格が現在の価格より低ければ削除する

 
MakarFX:

フルネームでない名前でオブジェクトを探す方法を教えてください。

インジケータはオブジェクトを作成し、それに名前を付けます

オブジェクトを検索し、その価格が現在のものよりも低い場合は削除する必要があります。

そうなんですか?

文字列検索

文字列中の部分文字列を検索する。

intStringFind(
stringstring_value,// )string 探している文字列
stringmatch_substring,//探し
intstart_pos=0// どの位置から検索を開始 するか
);

パラメータ

文字列の値

[in] 検索対象となる文字列。

match_substring(マッチサブストリング

[in] 検索対象となるMatch_substring。

start_pos=0

[in] 検索を開始する文字列の位置。

戻り値

検索する部分文字列が始まる文字列の位置番号を返す。あるいは、部分文字列が見つからなければ-1。

 
Vitaly Muzichenko:

これか?

たぶん、ないと思います...。

というか、オブジェクト検索とどう連動させればいいのかわからない。

やってます。

 for(int i=0;i<ObjectsTotal();i++)
     ObjectDelete(0,"Min"+IntegerToString(i));

が、うまくいかない。

 
MakarFX:

たぶん、ないと思います...。

というか、オブジェクト検索とどう連動させればいいのかわからない。

まだまだ頑張ります。

が、どうしてもうまくいかない(

for(int i=0;i<ObjectsTotal();i++) {
 if(StringFind(получим имя объекта,"Min")>-1) { // ObjectName
   ObjectDelete(0,"полученное имя");

stringObjectName(
intobject_index// オブジェクトリスト内の番号
);

 

これを提案します。

int obj_total=ObjectsTotal(); 
 
   for(i=obj_total-1;i>=0;i--) 
     { 
      string name=ObjectName(i); 
      if(StringFind(name,"Min",0)!=-1)
        {
        ObjectDelete(name);
        } 
     } 
 
Vitaly Muzichenko:


アレクセウ・フェドトフ

ありがとうございます、今すぐ両方試してみます)

 

このように作りました。

 for(int a = 0; a<ObjectsTotal() ;a++)
  {
   if(ObjectGet(ObjectName(a),OBJPROP_PRICE1)>iHigh(Symbol(),PERIOD_D1,1))
   if(ObjectDelete(ObjectName(a)))Print("Delete");
  }

完璧に動作します。

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

 

こんにちは。商品代金について質問します。しているところです。

MarketInfo("EURCAD",MODE_TICKVALUE) 
MarketInfo("USDCAD",MODE_TICKVALUE)

この2つのペアで同じ値を得ることができます。こんな感じなんでしょうか?それとも不具合?

 
MakarFX:

このように作りました。

完璧に動作します。

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

このサイクルを逆転させなければならない。そうでないと、なぜ完璧に動作しなかったのかという疑問が出てきます。