記事"MQL4からMQL5への移植"についてのディスカッション - ページ 11 1...45678910111213 新しいコメント vietlh216 2017.10.09 12:18 #101 皆さんこんにちは、 MQL5でObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value)を使用する方法をご存知ですか?OBJPROP_FIRSTLEVELを検索しようとしましたが、MQL5では見つかりません。mql4:void _SetFibLevel(string objname, int level, double value, string description)//+------------------------------------------------------------------+{ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);ObjectSetFiboDescription(objname,level,description);}----------------------------------- Stanislav Korotky 2017.10.09 13:15 #102 vietlh216:MQL5でObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value)を使用する方法をご存知ですか? OBJPROP_FIRSTLEVELを検索しようとしましたが、MQL5では見つかりません。mql4:void _SetFibLevel(string objname, int level, double value, string description)//+------------------------------------------------------------------+{ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);ObjectSetFiboDescription(objname,level,description);}-----------------------------------私のブログポストで 既成の解決策を読むことができます。 Yohana Parmi 2017.10.09 13:41 #103 Stanislav Korotky: 私のブログ記事を 読めば、すぐに解決できる。とても役に立った。) vietlh216 2017.10.10 03:16 #104 Stanislav Korotky: 私のブログの記事を 読めば、すぐに解決できます。Stanislav Korotkyさん、解決策をありがとうございます。しかし、私はMQL5があまり得意ではなく、OBJPROP_FIRSTLEVELをMQL5で使用するために変換する方法がまだわかりません。同じオブジェクト・プロパティは見当たりません:OBJPROP_FIRSTLEVEL+n210+nintインデックスnのフィボナッチ・オブジェクト・レベルの値を設定/取得する整数値。インデックスnは0(レベル数-1)から可能ですが、31より大きくはできません。MQL5にはありません。例: MQL4 : ObjectSetFiboDescription(objname,level,description);->MQL5: ObjectSetString(0,objname,OBJPROP_LEVELTEXT,level,description); MQL4:ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);->MQL5:? vietlh216 2017.10.10 03:29 #105 vietlh216: Stanislav Korotkyさん、解決策をありがとうございます。しかし、私はMQL5があまり得意ではなく、OBJPROP_FIRSTLEVELをMQL5で使用するためにどのように変換すればよいのかわかりません。同じオブジェクト・プロパティは見当たりません:OBJPROP_FIRSTLEVEL+n210+nintインデックスnのフィボナッチ・オブジェクト・レベルの値を設定/取得する整数値。インデックスnは0(レベル数-1)から可能ですが、31より大きくはできません。MQL5にはありません。例: MQL4 : ObjectSetFiboDescription(objname,level,description);->MQL5: ObjectSetString(0,objname,OBJPROP_LEVELTEXT,level,description); MQL4:ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);->MQL5:? あ、見つけましたObjectSetDouble(0,objname,OBJPROP_LEVELVALUE,level,value);^^ Stanislav Korotky 2017.10.10 13:22 #106 vietlh216: あ、ありましたObjectSetDouble(0,objname,OBJPROP_LEVELVALUE,level,value);^^私のincludeに次のような補足を加えてみてください:class OBJPROP_DOUBLE_BROKER_EXTENDED: public OBJPROP_DOUBLE_BROKER { public: OBJPROP_DOUBLE_BROKER_EXTENDED(const ENUM_OBJECT_PROPERTY_DOUBLE property, const int modifier): OBJPROP_DOUBLE_BROKER(property, modifier) { } OBJPROP_DOUBLE_BROKER_EXTENDED *operator+(const int add) { i = add; return &this; } }; OBJPROP_DOUBLE_BROKER_EXTENDED OBJPROP_FIRSTLEVEL(OBJPROP_LEVELVALUE, 0); この後、あなたの最初のMQL4コードはそのまま動作するはずです。 vietlh216 2017.10.11 08:22 #107 Stanislav Korotky: 私のincludeに以下の追記をしてみてください:これでMQL4のコードがそのまま動くはずだ。Stanislav Korotkyに感謝します。 Carl Schreiber 2018.06.27 18:17 #108 に交換することをお勧めする。 string StringConcatenate(..); に置き換えることをお勧めします。 string StringFormat("",..); どちらの関数も 文字列を返すので、特定の条件下では置き換えが簡単になる! Marcin Madrzak 2019.01.09 00:18 #109 Stanislav Korotky: 私のincludeに以下の追記をしてみてください:この後、最初のMQL4コードはそのまま動作するはずです。OBJPROP_DOUBLE_BROKER_EXTENDEDクラスをあなたのind4to5インクルードに追加したのですが、最新のMetaeditorビルドでは、1958のObjectSetDouble(chart_ID,name,OBJPROP_PRICE1,price1)の呼び出しはコンパイルエラー'ObjectSetDouble'を返します。何かアイデアはありますか? Marcin Madrzak 2019.01.09 01:29 #110 ObjectSetDoubleがind4to5に含まれていないことを自分で突き止めた。mqhに以下のコードを追加したところ、問題は解決した。 bool ObjectSetDouble(long chart_id, const string name, const OBJPROP_DOUBLE_BROKER &property, const double value) { return ObjectSetDouble(chart_id, name, property.p, property.i, value); } 1...45678910111213 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
皆さんこんにちは、
MQL5でObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value)を使用する方法をご存知ですか?OBJPROP_FIRSTLEVELを検索しようとしましたが、MQL5では見つかりません。
mql4:
void _SetFibLevel(string objname, int level, double value, string description)
//+------------------------------------------------------------------+
{
ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);
ObjectSetFiboDescription(objname,level,description);
}
-----------------------------------
MQL5でObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value)を使用する方法をご存知ですか? OBJPROP_FIRSTLEVELを検索しようとしましたが、MQL5では見つかりません。
mql4:
void _SetFibLevel(string objname, int level, double value, string description)
//+------------------------------------------------------------------+
{
ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);
ObjectSetFiboDescription(objname,level,description);
}
-----------------------------------
私のブログポストで 既成の解決策を読むことができます。
私のブログ記事を 読めば、すぐに解決できる。
とても役に立った。)
私のブログの記事を 読めば、すぐに解決できます。
Stanislav Korotkyさん、解決策をありがとうございます。しかし、私はMQL5があまり得意ではなく、OBJPROP_FIRSTLEVELをMQL5で使用するために変換する方法がまだわかりません。
同じオブジェクト・プロパティは見当たりません:
OBJPROP_FIRSTLEVEL+n
210+n
int
インデックスnのフィボナッチ・オブジェクト・レベルの値を設定/取得する整数値。インデックスnは0(レベル数-1)から可能ですが、31より大きくはできません。
MQL5にはありません。
例: MQL4 : ObjectSetFiboDescription(objname,level,description);->MQL5: ObjectSetString(0,objname,OBJPROP_LEVELTEXT,level,description);
MQL4:ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);->MQL5:?
Stanislav Korotkyさん、解決策をありがとうございます。しかし、私はMQL5があまり得意ではなく、OBJPROP_FIRSTLEVELをMQL5で使用するためにどのように変換すればよいのかわかりません。
同じオブジェクト・プロパティは見当たりません:
OBJPROP_FIRSTLEVEL+n
210+n
int
インデックスnのフィボナッチ・オブジェクト・レベルの値を設定/取得する整数値。インデックスnは0(レベル数-1)から可能ですが、31より大きくはできません。
MQL5にはありません。
例: MQL4 : ObjectSetFiboDescription(objname,level,description);->MQL5: ObjectSetString(0,objname,OBJPROP_LEVELTEXT,level,description);
MQL4:ObjectSet(objname,OBJPROP_FIRSTLEVEL+level,value);->MQL5:?
あ、見つけました
ObjectSetDouble(0,objname,OBJPROP_LEVELVALUE,level,value);
^^
あ、ありました
ObjectSetDouble(0,objname,OBJPROP_LEVELVALUE,level,value);
^^
私のincludeに次のような補足を加えてみてください:
この後、あなたの最初のMQL4コードはそのまま動作するはずです。
私のincludeに以下の追記をしてみてください:
これでMQL4のコードがそのまま動くはずだ。
Stanislav Korotkyに感謝します。
に交換することをお勧めする。
に置き換えることをお勧めします。
どちらの関数も 文字列を返すので、特定の条件下では置き換えが簡単になる!
私のincludeに以下の追記をしてみてください:
この後、最初のMQL4コードはそのまま動作するはずです。
OBJPROP_DOUBLE_BROKER_EXTENDEDクラスをあなたのind4to5インクルードに追加したのですが、最新のMetaeditorビルドでは、1958のObjectSetDouble(chart_ID,name,OBJPROP_PRICE1,price1)の呼び出しはコンパイルエラー'ObjectSetDouble'を返します。何かアイデアはありますか?
ObjectSetDoubleがind4to5に含まれていないことを自分で突き止めた。mqhに以下のコードを追加したところ、問題は解決した。