MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 147 1...140141142143144145146147148149150151152153154...1953 新しいコメント Aleksey Vyazmikin 2017.03.10 19:25 #1461 -Aleks-:i>0の値でVesMass配列を計算するとゼロになるのが理解できないのですが? 4と5ではなく、4.0と5.0と書くべきということが判明したのですが、どういう理屈なのか、私にはよくわかりません...。 Alexey Viktorov 2017.03.10 20:01 #1462 -Aleks-: 4と5ではなく、4.0と5.0と書くべきということが判明したのですが、どういう理屈なのか、私にはよくわかりません...。 ドキュメントを読めば、明らかになるはずです。自分でやったのはいいことだ。 Aleksey Vyazmikin 2017.03.10 20:29 #1463 Alexey Viktorov: ドキュメントを読めば、明らかになるはずです。自分でやったのはいいことだ。 そうそう、以前こんなことが書いてあったよ~ということで、やってみようと思ったのですが、どこがどう理屈になっているのか不明で...。で、ちなみにドキュメントには答えが見つかりませんでした。 Vitalie Postolache 2017.03.10 20:39 #1464 -Aleks-: 以前、こんなことが書いてあったな~と思い、やってみようと思ったのですが、どこがどう理屈なのかよくわからない......。ちなみにドキュメントにも答えは見つかりませんでした。 これはMCLに限らず、C++や他のプログラミング言語でも同じで、2つの整数やint型の変数を割り算すると、結果が整数に切り捨てられるという特徴があります。あなたの場合、4/5=0です。 4.0/5や(double)4/5と書けば、結果は実数になる。 Aleksey Vyazmikin 2017.03.10 20:46 #1465 Vitalie Postolache: これはICLだけの特徴ではなく、C++などのプログラミング言語でも同じで、2つの整数や型(int)の変数を割ると、結果が整数に切り詰められる。あなたの場合、4/5=0です。 4.0/5や(double)4/5と書けば、結果は実数になる。それはわかるのですが、その解決策、つまり必要性の論理がわからないのです。 Vitalie Postolache 2017.03.10 20:50 #1466 -Aleks-:それはわかるのですが、その解決策、つまり必要性の論理がわからないのです。 では、「算数でなぜ2*2=4なのか、解の論理は何か」という議論はしないのですか?それを公理として捉えて使っているだけなんですね。2つの整数の割り算でもそうだ。 Aleksey Vyazmikin 2017.03.10 23:07 #1467 Vitalie Postolache: では、「算数でなぜ2*2=4なのか、その解の論理は何か」という議論はしないのですか?それを公理として捉えて使っているだけなんですね。2つの整数を割り算するのと同じです。追加で確認します・・・。 Kot 2017.03.11 07:58 #1468 コト。 線は、トレンドラインです。そのプロパティをレイに変更しました。役に立たなかった。ゼロバーの位置(上、下)に関係なく、価格を出力させたい場合。このコードもうまくいきません。int start() {double pr=ObjectGetValueByShift("line",0)。If (Bid==pr){。アラート(pr);}。return(0);}。 回線名のスペルは正しいか?このスクリプトを試してみて、ログに書かれている内容を示してください。void OnStart() { double pr; int obj_total=ObjectsTotal(); string name; int i; for(i=0;i<obj_total;i++) { name=ObjectName(i); if(ObjectType(name)!=OBJ_TREND) continue; PrintFormat("Объект %d: Имя объекта - %s",i,name); pr=ObjectGetValueByShift(name,0); PrintFormat("Объект %d: Цена - %.5f",i,pr); } }スクリプトはオブジェクトを検出し、名前を正しく書き込みます。でも、値段は絶対に左利きです。写真に横線で 表示されています。バーがラインを越えたかどうかに関係なく、これらの価格が表示されます。 ファイル: 23.png 62 kb Maxim Kuznetsov 2017.03.11 08:16 #1469 Kot: 線がトレンドになっている。プロパティをビームに変更しました。役に立たなかった。価格はゼロバーの位置(上、下)に関係なく表示されることが理想的です。このコードもうまくいきません。int start() {double pr=ObjectGetValueByShift("line",0)。If(Bid==pr){。アラート(pr);}。return(0);}。ビッドは簡単にラインをジャンプさせることができ、各ポイントで停止する義務はない(つまり、正確な等号を得ることはできない)。例えば、if ((MathMin(Close[1],Open[0])<=pr && Bid>=pr) || (MathMax(Close[1],Open[0])>=pr && Bid<=pr)) などに条件を変更するとか・・・。 Kot 2017.03.11 08:48 #1470 Maxim Kuznetsov:ビッドは簡単にラインを飛び越えることができ、すべてのポイントで停止する義務はありません(つまり、正確な等価は起こりません)。例えば、if ((MathMin(Close[1],Open[0])<=pr && Bid>=pr) || (MathMax(Close[1],Open[0])>=pr && Bid<=pr)) などに条件を変更するとか・・・。 ありがとうございます!アイデアが浮かびました。状況が違えばどうでしょう。チャート上に異なる名称の水平線が あります。どのラインがどの価格に対応するかを計算するスクリプトが必要です。 1...140141142143144145146147148149150151152153154...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
i>0の値でVesMass配列を計算するとゼロになるのが理解できないのですが?
4と5ではなく、4.0と5.0と書くべきということが判明したのですが、どういう理屈なのか、私にはよくわかりません...。
ドキュメントを読めば、明らかになるはずです。自分でやったのはいいことだ。
以前、こんなことが書いてあったな~と思い、やってみようと思ったのですが、どこがどう理屈なのかよくわからない......。ちなみにドキュメントにも答えは見つかりませんでした。
4.0/5や(double)4/5と書けば、結果は実数になる。これはMCLに限らず、C++や他のプログラミング言語でも同じで、2つの整数やint型の変数を割り算すると、結果が整数に切り捨てられるという特徴があります。あなたの場合、4/5=0です。
4.0/5や(double)4/5と書けば、結果は実数になる。これはICLだけの特徴ではなく、C++などのプログラミング言語でも同じで、2つの整数や型(int)の変数を割ると、結果が整数に切り詰められる。あなたの場合、4/5=0です。
それはわかるのですが、その解決策、つまり必要性の論理がわからないのです。
それはわかるのですが、その解決策、つまり必要性の論理がわからないのです。
では、「算数でなぜ2*2=4なのか、解の論理は何か」という議論はしないのですか?それを公理として捉えて使っているだけなんですね。2つの整数の割り算でもそうだ。
では、「算数でなぜ2*2=4なのか、その解の論理は何か」という議論はしないのですか?それを公理として捉えて使っているだけなんですね。2つの整数を割り算するのと同じです。
追加で確認します・・・。
線は、トレンドラインです。そのプロパティをレイに変更しました。役に立たなかった。ゼロバーの位置(上、下)に関係なく、価格を出力させたい場合。
このコードもうまくいきません。
int start() {
double pr=ObjectGetValueByShift("line",0)。
If (Bid==pr){。
アラート(pr);}。
return(0);}。
回線名のスペルは正しいか?
このスクリプトを試してみて、ログに書かれている内容を示してください。
}
スクリプトはオブジェクトを検出し、名前を正しく書き込みます。でも、値段は絶対に左利きです。写真に横線で 表示されています。バーがラインを越えたかどうかに関係なく、これらの価格が表示されます。
線がトレンドになっている。プロパティをビームに変更しました。役に立たなかった。価格はゼロバーの位置(上、下)に関係なく表示されることが理想的です。
このコードもうまくいきません。
int start() {
double pr=ObjectGetValueByShift("line",0)。
If(Bid==pr){。
アラート(pr);}。
return(0);}。
ビッドは簡単にラインをジャンプさせることができ、各ポイントで停止する義務はない(つまり、正確な等号を得ることはできない)。
例えば、if ((MathMin(Close[1],Open[0])<=pr && Bid>=pr) || (MathMax(Close[1],Open[0])>=pr && Bid<=pr)) などに条件を変更するとか・・・。
ビッドは簡単にラインを飛び越えることができ、すべてのポイントで停止する義務はありません(つまり、正確な等価は起こりません)。
例えば、if ((MathMin(Close[1],Open[0])<=pr && Bid>=pr) || (MathMax(Close[1],Open[0])>=pr && Bid<=pr)) などに条件を変更するとか・・・。
ありがとうございます!アイデアが浮かびました。
状況が違えばどうでしょう。チャート上に異なる名称の水平線が あります。どのラインがどの価格に対応するかを計算するスクリプトが必要です。