ICustom機能 - ページ 15 1...891011121314151617181920212223 新しいコメント 削除済み 2011.11.02 08:57 #141 2つのタイムフレームを同じバッファで取得するために、icustom関数を使用する例はありますか? 2つのタイムフレームのバッファが同じ名前なので、どのように異なるタイムフレームを決定することができますか? 現在のタイム フレーム double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0); 上位のタイムフレーム double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1); Mladen Rakic 2011.11.02 09:25 #142 このように試してみてください。 double trend1minute = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0); double trend5minute = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1); そして、必要に応じて2つの変数を使用します(例: if (trend1minute == ... && trend5minute ==... ) do something) mtuppers: 2つのタイムフレームを同じバッファで取得するために、icustom関数を使用する例はありますか?2つのTFバッファが同じ名前なので、異なるタイムフレームをどのように判断すればよいのでしょうか? 現在のタイムフレーム double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0); 上位のタイムフレーム double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1); nhopkins 2011.11.19 12:20 #143 iCustomをEAで使用する、シングルインスタンス 皆さん、こんにちは。 私はカスタムインジケータを 使用するためにEAを書くことに取り組んでいます、私がバックテストするとき、私はそれがiCustom関数に呼び出されるたびにインジケータの新しいインスタンスをロードするように見えることに気づいた。どなたか、カスタムインジケータを一度ロードし、それを連続的に参照する方法をご存知でしょうか? void OnBar() { RSIPL = iCustom(NULL,0,"NCH_DI",0,4,BarIndex); TSL = iCustom(NULL,0,"NCH_DI",0,5,BarIndex); HAOpen = iCustom(NULL,0,"HeikenAshi",0,2,BarIndex); HAClose = iCustom(NULL,0,"HeikenAshi",0,3,BarIndex); PACHigh = iMA(NULL,0,5,0,MODE_SMMA,PRICE_HIGH,BarIndex); PACLow = iMA(NULL,0,5,0,MODE_SMMA,PRICE_LOW,BarIndex); // DO MY OTHER STUFF HERE } 上記のコードでは、NCH_DIの新しいインスタンスを呼び出すたびにロードしています。 ありがとうございます。 ICustom function Indicators: SSL Channel (TradingView) how the get custom CodeMeister 2011.11.19 12:32 #144 できないこと これがMT4の動作方法です。最良の解決策は、コード内のiCustom()呼び出しの数を最小限に抑えることです。HAは通常、新しいバーが形成されたときにのみ呼び出される必要があります。ティックごとに 呼び出すのは最適ではありません。 nhopkins 2011.11.19 12:47 #145 CodeMeister: MT4はそのように動作します。最良の解決策は、コード内のiCustom()呼び出しの数を最小限に抑えることです。HAは通常、新しいバーが形成されたときにのみ呼び出される必要があります。ティック毎に呼び出すのは最適ではありません。 私は新しいバーフォーメーションにすべてのコールを設定しています。NCH_DIは、残念ながら、比較的メモリを消費するコードです。古いインスタンスをダンプする方法について、何か提案はありますか? CodeMeister 2011.11.19 15:02 #146 これを試す ストラテジーテスターは、このEAの最終目標ではありません。チャート上でライブに動作させることが目的です。iCustom()の読み込みは、十分なメモリがあればチャート上で一度だけ行われると思いますので、Strategy Testerの特殊性に合わせて何かを作ることに多くの時間を費やすことはないでしょう。iCustom()の他の選択肢としては、EAに直接インジケータをコーディングすることです。 nhopkins 2011.11.19 23:30 #147 EAに再コード化することも考えたのですが......。今回はそれが現実的でないと判断しました。インジケーターの#property indicator_separate_windowを コメントアウトすると、呼び出しが完了した時点でロードとアンロードが行われることがわかりました。ありがとうございます。 削除済み 2011.12.10 20:55 #148 iCustom Indicatorの 不具合について こんにちは。 私のEAはiCustomで独自のインジケータを使用しています。 新しいローソク足が始まると、iCustomによってインジケータが呼び出されます。 今、iCustom[1]の値が前のバーのiCustom[0]と同じでないことに気づきました。 iCustom[1]の値は前のバーのiCustom[0]と同じですが、RSIなどで確認した値と全く同じというわけではありません。 どこに原因があるのでしょうか? すべてのヒントをありがとうございました。 カミロ Kale 2011.12.10 21:16 #149 カスタムインジケータが 使用している価格に依存します。もしカスタムインジケータが終値、高値、安値、または現在のローソク足の展開中に変化する他の価格を使用している場合、[0]インデックスの値は変更されます。 例えば、カスタム価格を使用しているインジケーターを呼び出し、[0]の値を比較し、バーが閉じた後に[1]の結果と比較すると、卵は卵なので、値が異なることはほぼ間違いないでしょう。しかし、カスタムインディケータをクローズではなく、オープン価格を使うように設定した場合、その値は等しくなります(オープン価格はローソク足の展開中に変化しないためです)。 削除済み 2011.12.10 22:33 #150 Kalenzoさん、ありがとうございます。 私は[2]の値をチェック し、[1]→[2]についてはすべて大丈夫そうだと気づきました。 ここに私のインジケータの値の例があります。 .... [0]..........[1].........[2] t4 31,8711 42,6700 52,1915 t3 44,6881 52,1915 60,3014 t2 53,0572 60,3014 67,6553 t1 59,8860 67,6553 74,5797 ということで、バーのオープニングの識別が問題のようです。 以前、チェックしたように使っているだけです。 if(Volume[0]>1)リターン。 というチェックをしているのですが、これでいいのでしょうか? 1...891011121314151617181920212223 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
2つのタイムフレームを同じバッファで取得するために、icustom関数を使用する例はありますか?
2つのタイムフレームのバッファが同じ名前なので、どのように異なるタイムフレームを決定することができますか?
現在のタイム フレーム
double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0);
上位のタイムフレーム
double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1);
そして、必要に応じて2つの変数を使用します(例: if (trend1minute == ... && trend5minute ==... ) do something)
2つのタイムフレームを同じバッファで取得するために、icustom関数を使用する例はありますか?
2つのTFバッファが同じ名前なので、異なるタイムフレームをどのように判断すればよいのでしょうか?
現在のタイムフレーム
double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0);
上位のタイムフレーム
double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1);iCustomをEAで使用する、シングルインスタンス
皆さん、こんにちは。
私はカスタムインジケータを 使用するためにEAを書くことに取り組んでいます、私がバックテストするとき、私はそれがiCustom関数に呼び出されるたびにインジケータの新しいインスタンスをロードするように見えることに気づいた。どなたか、カスタムインジケータを一度ロードし、それを連続的に参照する方法をご存知でしょうか?
void OnBar()
{
RSIPL = iCustom(NULL,0,"NCH_DI",0,4,BarIndex);
TSL = iCustom(NULL,0,"NCH_DI",0,5,BarIndex);
HAOpen = iCustom(NULL,0,"HeikenAshi",0,2,BarIndex);
HAClose = iCustom(NULL,0,"HeikenAshi",0,3,BarIndex);
PACHigh = iMA(NULL,0,5,0,MODE_SMMA,PRICE_HIGH,BarIndex);
PACLow = iMA(NULL,0,5,0,MODE_SMMA,PRICE_LOW,BarIndex);
// DO MY OTHER STUFF HERE
}
上記のコードでは、NCH_DIの新しいインスタンスを呼び出すたびにロードしています。
ありがとうございます。
できないこと
これがMT4の動作方法です。最良の解決策は、コード内のiCustom()呼び出しの数を最小限に抑えることです。HAは通常、新しいバーが形成されたときにのみ呼び出される必要があります。ティックごとに 呼び出すのは最適ではありません。
MT4はそのように動作します。最良の解決策は、コード内のiCustom()呼び出しの数を最小限に抑えることです。HAは通常、新しいバーが形成されたときにのみ呼び出される必要があります。ティック毎に呼び出すのは最適ではありません。
私は新しいバーフォーメーションにすべてのコールを設定しています。NCH_DIは、残念ながら、比較的メモリを消費するコードです。古いインスタンスをダンプする方法について、何か提案はありますか?
これを試す
ストラテジーテスターは、このEAの最終目標ではありません。チャート上でライブに動作させることが目的です。iCustom()の読み込みは、十分なメモリがあればチャート上で一度だけ行われると思いますので、Strategy Testerの特殊性に合わせて何かを作ることに多くの時間を費やすことはないでしょう。iCustom()の他の選択肢としては、EAに直接インジケータをコーディングすることです。
EAに再コード化することも考えたのですが......。今回はそれが現実的でないと判断しました。インジケーターの#property indicator_separate_windowを コメントアウトすると、呼び出しが完了した時点でロードとアンロードが行われることがわかりました。ありがとうございます。
iCustom Indicatorの 不具合について
こんにちは。
私のEAはiCustomで独自のインジケータを使用しています。
新しいローソク足が始まると、iCustomによってインジケータが呼び出されます。
今、iCustom[1]の値が前のバーのiCustom[0]と同じでないことに気づきました。
iCustom[1]の値は前のバーのiCustom[0]と同じですが、RSIなどで確認した値と全く同じというわけではありません。
どこに原因があるのでしょうか?
すべてのヒントをありがとうございました。
カミロ
カスタムインジケータが 使用している価格に依存します。もしカスタムインジケータが終値、高値、安値、または現在のローソク足の展開中に変化する他の価格を使用している場合、[0]インデックスの値は変更されます。
例えば、カスタム価格を使用しているインジケーターを呼び出し、[0]の値を比較し、バーが閉じた後に[1]の結果と比較すると、卵は卵なので、値が異なることはほぼ間違いないでしょう。しかし、カスタムインディケータをクローズではなく、オープン価格を使うように設定した場合、その値は等しくなります(オープン価格はローソク足の展開中に変化しないためです)。
Kalenzoさん、ありがとうございます。
私は[2]の値をチェック し、[1]→[2]についてはすべて大丈夫そうだと気づきました。
ここに私のインジケータの値の例があります。
.... [0]..........[1].........[2]
t4 31,8711 42,6700 52,1915
t3 44,6881 52,1915 60,3014
t2 53,0572 60,3014 67,6553
t1 59,8860 67,6553 74,5797
ということで、バーのオープニングの識別が問題のようです。
以前、チェックしたように使っているだけです。
if(Volume[0]>1)リターン。
というチェックをしているのですが、これでいいのでしょうか?