初心者の方からの質問 MQL4 MT4 MetaTrader 4 - ページ 212 1...205206207208209210211212213214215216217218219...260 新しいコメント Xopb 2020.08.22 11:31 #2111 Aleksei Stepanenko:構成にするとさらに良い使い始める前にエレメントをゼロにすることを忘れずにそして、必要なところでカウントを増やすなら これで、新しいローソク 足ごとに、前の10本のローソク足の周りをぐるりと一周したことになります。これは合理的ではありません。常に前の値の計算結果を記憶しておくことで、無駄なサイクルをなくすことができるはずです。あなたの場合、新しいローソク 足が来たら、条件を満たした時にカウントを増やし、条件を満たさなければ減算すればいいのです。 そして、超過がないかどうかを確認します。10個の要素に対するサイクルは必要なく、主要なものだけです。 アレクセイ、やってみたけど、やっぱりうまくいかないんだ。 はカウントに1つも加算されません。 for(int i=1;i<=10;i++) { count.up=0; count.dn=0; double hig10 = iMA (NULL,CP,WPER, 0, MODE_SMA, PRICE_CLOSE, i); if (hig10>iClose(Symbol(),CP,i)) { count.up++; } else { count.dn++; } } if (count.up>=8) { Comment("dsdsD"); } Aleksei Stepanenko 2020.08.22 11:39 #2112 ループから削除する必要があります count.up=0; count.dn=0; なぜなら、各反復で前の値をゼロにしているからです。ループの前に書いてください。 Xopb 2020.08.22 12:00 #2113 Aleksei Stepanenko:ループから削除する必要がありますなぜなら、各反復で前の値をゼロにしているからです。ループの前に書き込む ありがとう ございます。 しかし、不思議なもので、構造体を使わずに、通常の値だけで次のようにやっていたのです。 for(int i=1;i<=10;i++) { double hig10 = iMA (NULL,CP,WPER, 0, MODE_SMA, PRICE_CLOSE, i); if (hig10>iClose(Symbol(),CP,i)) { J=J+1; else { J=0; } } if (J>=8) { Comment("dfdf"); と表示され、1目盛りごとに プラスされるようになります)) Aleksei Stepanenko 2020.08.22 12:06 #2114 構造もカチッとしたものになります。新しいローソクの スタート時のみ動作させるには、そのローソクの時間を追跡する必要があります datetime LastTime; if(LastTime!=Time[0]) { LastTime=Time[0]; //Здесь ваш код } Denis Diakonov 2020.09.01 04:14 #2115 アドバイスをお願いします。私は別のファイル.mqhでカスタム関数を持っているそれらを#includeを介して規定し、私は順番に開始でそれらを呼び出すと、開始は1つの関数に行くとき、アクションに応じて、プログラムは別のファイル.mqh(例えば、注文数量の値を取得する)にアクセスする必要があり、これが発生しません。1枚のシートにすべてを書けばうまくいくし、注文開始パラメータに直接ロットを計算する式を書けばうまくいく。MQL4のレッスンに目を通したり、プログラムのドキュメントを読んだりしましたが、何も見つかりませんでした。ある.mqh関数が、計算の中で別の.mqh関数と相互作用できない理由がよくわからない。または、我々はそのような必要性に直面した場合、プログラムが開始するために返すようにする必要があります - それは開始するために結果を返すだろうし、この計算で開始すると、関数に戻り.mqh順序を開くのだろうか?これは何かゴミのような...。あるいは、既存のすべての関数を別の方法で宣言して、それらが相互に作用するようにすべきなのでしょうか?感謝 Nauris Zukas 2020.09.05 10:55 #2116 こんにちは! LINEの年号(2020年)と分数を消す一番簡単な方法は何ですか?TimeToStrはまだ他の出力形式がないのですか? TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES); Vitaly Muzichenko 2020.09.05 13:04 #2117 Nauris Zukas: こんにちは! LINEの年号(2020年)と分数を消す一番簡単な方法は何ですか?TimeToStrはまだ他の出力形式がないのですか? tm=(string)Hour(); Nauris Zukas 2020.09.05 16:29 #2118 Vitaly Muzichenko: ありがとうございました。 Artem Likhachev 2020.09.08 15:40 #2119 Denis Diakonov: ヒントを教えてください。ユーザー定義関数を別々の.mqhファイルにして、#includeで記述しています。 スタート時にそれらを呼び出し、スタートがある関数に行ったときに、プログラムが別の.mqhファイルを呼び出す必要があるのですが(たとえば、注文数量の値を取得する)、これが起こりません。1枚のシートにすべてを書けばうまくいくし、注文開始パラメータに直接ロットを計算する式を書けばうまくいく。MQL4のレッスンに目を通したり、プログラムのドキュメントを読んだりしましたが、何も見つかりませんでした。ある.mqh関数が、計算の中で別の.mqh関数と相互作用できない理由がよくわからない。または、我々はそのような必要性に直面した場合、プログラムが開始するために返すようにする必要があります - それは開始するために結果を返すだろうし、この計算で開始すると、関数に戻り.mqh順序を開くのだろうか?これは何かゴミのような...。あるいは、既存のすべての関数を別の方法で宣言して、それらが相互に作用するようにすべきなのでしょうか?感謝 インラインで接続した場合は、ファイルではなく、関数から参照する。もちろん、私が正しく理解していればの話ですが。 Urman Ru 2020.09.13 11:15 #2120 olyakish_fractals_01 "を私のアイデアで書き換えてみました。私のはWilliamsの緑の棒がベースになっています。勘違いしているのですが、MQL4の知識が乏しく、チャートに表示されないのです。どなたか心当たりのある方、お金がかからなければ助けてください)。 ファイル: 18wbguVOL.mq4 13 kb 1...205206207208209210211212213214215216217218219...260 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
構成にするとさらに良い
使い始める前にエレメントをゼロにすることを忘れずに
そして、必要なところでカウントを増やす
なら
これで、新しいローソク 足ごとに、前の10本のローソク足の周りをぐるりと一周したことになります。これは合理的ではありません。常に前の値の計算結果を記憶しておくことで、無駄なサイクルをなくすことができるはずです。あなたの場合、新しいローソク 足が来たら、条件を満たした時にカウントを増やし、条件を満たさなければ減算すればいいのです。 そして、超過がないかどうかを確認します。10個の要素に対するサイクルは必要なく、主要なものだけです。アレクセイ、やってみたけど、やっぱりうまくいかないんだ。
はカウントに1つも加算されません。
ループから削除する必要があります
なぜなら、各反復で前の値をゼロにしているからです。ループの前に書いてください。
ループから削除する必要があります
なぜなら、各反復で前の値をゼロにしているからです。ループの前に書き込む
ありがとう ございます。
しかし、不思議なもので、構造体を使わずに、通常の値だけで次のようにやっていたのです。
と表示され、1目盛りごとに プラスされるようになります))
構造もカチッとしたものになります。新しいローソクの スタート時のみ動作させるには、そのローソクの時間を追跡する必要があります
LINEの年号(2020年)と分数を消す一番簡単な方法は何ですか?TimeToStrはまだ他の出力形式がないのですか?
こんにちは! LINEの年号(2020年)と分数を消す一番簡単な方法は何ですか?TimeToStrはまだ他の出力形式がないのですか?
tm=(string)Hour();
ありがとうございました。
ヒントを教えてください。ユーザー定義関数を別々の.mqhファイルにして、#includeで記述しています。 スタート時にそれらを呼び出し、スタートがある関数に行ったときに、プログラムが別の.mqhファイルを呼び出す必要があるのですが(たとえば、注文数量の値を取得する)、これが起こりません。1枚のシートにすべてを書けばうまくいくし、注文開始パラメータに直接ロットを計算する式を書けばうまくいく。MQL4のレッスンに目を通したり、プログラムのドキュメントを読んだりしましたが、何も見つかりませんでした。ある.mqh関数が、計算の中で別の.mqh関数と相互作用できない理由がよくわからない。または、我々はそのような必要性に直面した場合、プログラムが開始するために返すようにする必要があります - それは開始するために結果を返すだろうし、この計算で開始すると、関数に戻り.mqh順序を開くのだろうか?これは何かゴミのような...。あるいは、既存のすべての関数を別の方法で宣言して、それらが相互に作用するようにすべきなのでしょうか?感謝
インラインで接続した場合は、ファイルではなく、関数から参照する。もちろん、私が正しく理解していればの話ですが。