[ARCHIVE!] フォーラムを散らかさないように、どんなルーキーの質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしではどこにも行けない - 4. - ページ 130 1...123124125126127128129130131132133134135136137...631 新しいコメント 削除済み 2012.05.16 17:45 #1291 alex12:しかし、EAにはもう一つコードがあります。この関数に例えばPrint("close by CloseMarket ", j);を入れ、前回投稿した関数にも同様のものを入れて、実行し、ログを見て、どのプリントが表示されているか、どのトリガーが発動したか分析します。同様に、クローズ実行条件でチェックした変数の値もログして、そのトリガーの理由を見つけます... Boris 2012.05.16 18:51 #1292 alsu: また、描画したい場所に正確にEAを置くことを妨げるものは何でしょうか? 私のEAはM1でより良く機能し、M5バーのオープニングで1トレードを開き、条件が許せばリフィルも行いますので。M5などのTFでもインジケーターを使用しています。また、M1ではバーのオープニングでテストするのがよく、他のTFではすべてのティックでテストするのは悪いことです。 私は絵を描くのではなく、EAが計算した結果をソムリエで表示し、すべてがうまくいっていることを確認するだけです。ご配慮、ご協力ありがとうございました Alexey Subbotin 2012.05.16 19:09 #1293 borilunad: 私のEAはM1でより良く動作し、M5バーのオープニングで1トレードを開始し、条件が許す限りリフィルも行います。そして、M5などのTFでインジケーターを使用しています。また、M1ではバーのオープニングでテストするのがよく、他のTFではすべてのティックでテストするのは悪いことです。 私は絵を描くのではなく、EAが計算した結果をソムリエで表示し、すべてがうまくいっていることを確認するだけです。ご配慮、ご協力ありがとうございました M1とM5のティックは同じソースから取得され、どのチャートからでも、Close[]をiCloseなどに置き換えるだけで、どのタイムフレームでも使用可能です。より良いテストをするためには、ティックからより良いfxt-fileを作る必要があります。ここに 例がありますが、一般的にグーグルでは、このテーマについて多くの情報があります。 Boris 2012.05.16 19:28 #1294 alsu: M1、M5ともにティックは同じソースから取得され、どのチャートのどのタイムフレームを使ってもよく、Close[]をiCloseなどに置き換えるだけです。より良いテストをするためには、ティックからより良いfxt-fileを作る必要があります。ここに 例がありますが、一般的にグーグルでは、このテーマについて多くの情報があります。 練習の結果、ティックよりオプで開いてテストする方が良いことが分かった。私はダニに全く興味がありません。デポが許せば、1日で良い結果が出る、より高いTFに移行するかもしれません。夜、ぐっすり眠るために、お得な情報は残さない。いつもありがとうございます。 alex 2012.05.16 20:06 #1295 smshev: この関数でPrint("Close by CloseMarket ", j); と、前回投稿した関数で同様のことをします。 実行して、これらのプリンタの結果をログで見て、どれがトリガーされたかを分析します。 同様に、クローズ条件でチェックした変数の値もログして、トリガーの理由を探します...。 ありがとうございます。 Alexey Subbotin 2012.05.16 22:42 #1296 borilunad: 練習では、ダニよりもオレップで開いてテストした方が良いという結果も出ています。そして、ダニには全く興味がない。デポが可能になったら、1日で良い結果が出る高めのTFに切り替えるかもしれません。夜、ぐっすり眠るために、お得な情報は残さない。いつもありがとうございます。 そうじゃなくて、EAがどこに付いてるかで何が変わるんだよって話。きちんと書かれていれば、どこにあっても問題ありません。モンゴル為替のチャート上であっても、EURUSDの1分足で動作するように設定されていれば、そのように動作するのです。しかも、プログラムするのは難しくなく、原則として2〜3行を変更するだけです。 [Deleted] 2012.05.16 23:01 #1297 プログラマーさんへ!MACDインジケーターウィンドウの最大数値で水平線が引けないのですが。 コード #property indicator_separate_window #プロパティ indicator_buffers 3 #property indicator_color1 ライム #property indicator_color2 レッド //--- バッファ double ExtMapBuffer1[]。 double ExtMapBuffer2[]。 double topBuffer[]; bool initFinished=false; // 初期化の状態を記憶する変数を追加する。 // false - 初期化がまだ行われていない。 // true - 初期化されました。 //+------------------------------------------------------------------+ //| カスタムインジケータ初期化関数 //+------------------------------------------------------------------+ int init() { //---- インジケータ SetIndexStyle(0,DRAW_LINE)を設定します。 SetIndexBuffer(0,ExtMapBuffer1)を設定します。 SetIndexStyle(1,DRAW_LINE)を設定します。 SetIndexBuffer(1,ExtMapBuffer2)を設定。 SetIndexStyle(2,DRAW_NONE)を設定します。 SetIndexBuffer(2,topBuffer)を設定。 //---- return(0)です。 } //+------------------------------------------------------------------+ //| カスタムインジケーター初期化関数 //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0)です。 } //+------------------------------------------------------------------+ //| カスタムインジケータ反復関数 //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(), 制限を受けます。 if(counted_bars>0) counted_bars--。 limit=Bars-counted_bars。 //---- for(int i=0;i<limit;i++) { ExtMapBuffer1[i]=iMACD(0,0,12,26,9,PRICE_CLOSE,MODE_MAIN,i)とする。 ExtMapBuffer2[i]=iMACD(0,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,i)とする。 if(initFinished==false) { IndicatorShortName("MACD_max-min")。 int win_idx=WindowFind("MACD_max-min"); // インジケータサブウインドウの番号を調べる if(win_idx<0) { // サブウィンドウ番号が -1 の場合はエラー Print("Window not found"); return(0)です。 } double top=WindowPriceMax(win_idx)。 //現在のチャートの指定されたサブウインドウの垂直スケールの最大値を求める ObjectCreate("max",OBJ_HLINE,win_idx,0,top)。 // インジケーターのサブウィンドウに水平線を描画します。 ObjectSet("max",OBJPROP_COLOR,Yellow)。 ObjectSet("max",OBJPROP_WIDTH,0)。 WindowRedraw()。 // ラインを見るためにウィンドウを再描画する initFinished=true とする。 // 描画を終了する } topBuffer[i]=top; } //---- return(0)です。 } //+------------------------------------------------------------------+ 行に見える。 double top=WindowPriceMax(win_idx)。 トップ変数が値を取得せず、また ObjectCreate("max",OBJ_HLINE,win_idx,0,top)。 そのため、必要なウィンドウと色に0行が表示され、topBuffer[]も空になってしまいます。この行で変数topの代わりに数値を置くと、行はこの固定値を取ります。どこか私は臨床エラーを持っています。 理解するためのヘルプ!事前にありがとうございます。 ファイル: macd_max-min.mq4 4 kb [ARCHIVE!] Any rookie question, 戦略を求める人は?たくさん、しかも無料で)。 [警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 Alexey Subbotin 2012.05.17 05:08 #1298 IndicatorShortNameはinit()に移動した方が良い。 [Deleted] 2012.05.17 06:15 #1299 alsu: IndicatorShortName は init() に移動する必要があります。 インジケータを開いたときにオブジェクトが表示されない場合は、インジケータのプロパティを表示するウィンドウを追加で開き、それを閉じるとオブジェクトが表示されるようになります。 Alexey Subbotin 2012.05.17 06:27 #1300 はwin_idxで良いのでしょうか? 1...123124125126127128129130131132133134135136137...631 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
しかし、EAにはもう一つコードがあります。
この関数に例えばPrint("close by CloseMarket ", j);を入れ、前回投稿した関数にも同様のものを入れて、実行し、ログを見て、どのプリントが表示されているか、どのトリガーが発動したか分析します。同様に、クローズ実行条件でチェックした変数の値もログして、そのトリガーの理由を見つけます...
また、描画したい場所に正確にEAを置くことを妨げるものは何でしょうか?
私のEAはM1でより良く機能し、M5バーのオープニングで1トレードを開き、条件が許せばリフィルも行いますので。M5などのTFでもインジケーターを使用しています。また、M1ではバーのオープニングでテストするのがよく、他のTFではすべてのティックでテストするのは悪いことです。
私は絵を描くのではなく、EAが計算した結果をソムリエで表示し、すべてがうまくいっていることを確認するだけです。ご配慮、ご協力ありがとうございました
私のEAはM1でより良く動作し、M5バーのオープニングで1トレードを開始し、条件が許す限りリフィルも行います。そして、M5などのTFでインジケーターを使用しています。また、M1ではバーのオープニングでテストするのがよく、他のTFではすべてのティックでテストするのは悪いことです。
私は絵を描くのではなく、EAが計算した結果をソムリエで表示し、すべてがうまくいっていることを確認するだけです。ご配慮、ご協力ありがとうございました
M1、M5ともにティックは同じソースから取得され、どのチャートのどのタイムフレームを使ってもよく、Close[]をiCloseなどに置き換えるだけです。より良いテストをするためには、ティックからより良いfxt-fileを作る必要があります。ここに 例がありますが、一般的にグーグルでは、このテーマについて多くの情報があります。
練習の結果、ティックよりオプで開いてテストする方が良いことが分かった。私はダニに全く興味がありません。デポが許せば、1日で良い結果が出る、より高いTFに移行するかもしれません。夜、ぐっすり眠るために、お得な情報は残さない。いつもありがとうございます。
この関数でPrint("Close by CloseMarket ", j); と、前回投稿した関数で同様のことをします。 実行して、これらのプリンタの結果をログで見て、どれがトリガーされたかを分析します。 同様に、クローズ条件でチェックした変数の値もログして、トリガーの理由を探します...。
練習では、ダニよりもオレップで開いてテストした方が良いという結果も出ています。そして、ダニには全く興味がない。デポが可能になったら、1日で良い結果が出る高めのTFに切り替えるかもしれません。夜、ぐっすり眠るために、お得な情報は残さない。いつもありがとうございます。
プログラマーさんへ!MACDインジケーターウィンドウの最大数値で水平線が引けないのですが。
コード
#property indicator_separate_window
#プロパティ indicator_buffers 3
#property indicator_color1 ライム
#property indicator_color2 レッド
//--- バッファ
double ExtMapBuffer1[]。
double ExtMapBuffer2[]。
double topBuffer[];
bool initFinished=false; // 初期化の状態を記憶する変数を追加する。
// false - 初期化がまだ行われていない。
// true - 初期化されました。
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init()
{
//---- インジケータ
SetIndexStyle(0,DRAW_LINE)を設定します。
SetIndexBuffer(0,ExtMapBuffer1)を設定します。
SetIndexStyle(1,DRAW_LINE)を設定します。
SetIndexBuffer(1,ExtMapBuffer2)を設定。
SetIndexStyle(2,DRAW_NONE)を設定します。
SetIndexBuffer(2,topBuffer)を設定。
//----
return(0)です。
}
//+------------------------------------------------------------------+
//| カスタムインジケーター初期化関数
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0)です。
}
//+------------------------------------------------------------------+
//| カスタムインジケータ反復関数
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted(),
制限を受けます。
if(counted_bars>0)
counted_bars--。
limit=Bars-counted_bars。
//----
for(int i=0;i<limit;i++)
{
ExtMapBuffer1[i]=iMACD(0,0,12,26,9,PRICE_CLOSE,MODE_MAIN,i)とする。
ExtMapBuffer2[i]=iMACD(0,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,i)とする。
if(initFinished==false)
{
IndicatorShortName("MACD_max-min")。
int win_idx=WindowFind("MACD_max-min");
// インジケータサブウインドウの番号を調べる
if(win_idx<0)
{
// サブウィンドウ番号が -1 の場合はエラー
Print("Window not found");
return(0)です。
}
double top=WindowPriceMax(win_idx)。
//現在のチャートの指定されたサブウインドウの垂直スケールの最大値を求める
ObjectCreate("max",OBJ_HLINE,win_idx,0,top)。
// インジケーターのサブウィンドウに水平線を描画します。
ObjectSet("max",OBJPROP_COLOR,Yellow)。
ObjectSet("max",OBJPROP_WIDTH,0)。
WindowRedraw()。
// ラインを見るためにウィンドウを再描画する
initFinished=true とする。
// 描画を終了する
}
topBuffer[i]=top;
}
//----
return(0)です。
}
//+------------------------------------------------------------------+
行に見える。
double top=WindowPriceMax(win_idx)。
トップ変数が値を取得せず、また
ObjectCreate("max",OBJ_HLINE,win_idx,0,top)。
そのため、必要なウィンドウと色に0行が表示され、topBuffer[]も空になってしまいます。この行で変数topの代わりに数値を置くと、行はこの固定値を取ります。どこか私は臨床エラーを持っています。 理解するためのヘルプ!事前にありがとうございます。
IndicatorShortName は init() に移動する必要があります。