初心者なのですが、HAを新しいウィンドウで表示させたいのですが...。 - ページ 3 1234 新しいコメント smohamedfarouk 2008.02.10 10:40 #21 ありがとうございました 上記のコードでオブジェクトを使用して線を描いていますが、この線はSetIndexStyle(0, DRAW_LINE) でどのような役割を担っているのでしょうか?バッファの役割は理解していますが、なぜバッファがインデックスにリンクされなければならないのか、なぜインデックスがスタイルを持たなければならないのかがわかりません。 上記のコードを使って、ローソク足がカーブしたエッジを持ち、価格チャートのように純粋な長方形でないことをご自身で確認されましたか? Ray 2008.02.10 16:23 #22 すでに説明したとおりです。 矩形が必要な場合は、トレンドラインオブジェクトの代わりに矩形を描画します。 smohamedfarouk 2008.02.11 01:33 #23 こんにちは、Phyさん。 RECTANGLEオプションが動作しないため、ご迷惑をおかけしております。 最後にもう一度試してみてください。この長方形が正しく動作するようになればいいのですが。 #プロパティ indicator_separate_window #property indicator_buffers 6 #property indicator_color1 CLR_NONE #property indicator_color2 CLR_NONE double high[]; double low[]; double open[]; double close[]; double haOpen1[]; double haClose1[]; //+------------------------------------------------------------------+ //| カスタムインジケータ初期化関数 //+------------------------------------------------------------------+ int init() { SetIndexStyle(0, DRAW_LINE)を設定します。 SetIndexStyle(1, DRAW_LINE)を設定します。 SetIndexStyle(2, DRAW_LINE).SetIndexStyle(2,DRAW_LINE)。 SetIndexStyle(3, DRAW_LINE).SetIndexStyle(3,DRAW_LINE)。 SetIndexStyle(4, DRAW_LINE).SetIndexStyle(4,DRAW_LINE)。 SetIndexStyle(5, DRAW_LINE).SetIndexStyle(5,DRAW_LINE)です。 SetIndexBuffer(0, high)を設定します。 SetIndexBuffer(1, low); SetIndexBuffer(1, low); SetIndexBuffer(2、open); SetIndexBuffer(3、close); SetIndexBuffer(4, haOpen1); SetIndexBuffer(5, haClose1); return(0); } //+------------------------------------------------------------------+ //|カスタムインジケータ初期化関数|||etc. //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ //| カスタムインジケータイテレーション関数 //+------------------------------------------------------------------+ int start(){ string basename = "Heikin-Ashi"; IndicatorShortName(basename); int window = WindowFind(basename); for (int i = Bars-100; i >= 0; i--){. // これら2つのインデックスは、サブウィンドウの大きさを制御するために使用されます。 // これらは表示されません high[i] = High[i]; low[i] = Low[i]; double haOpen, haHigh, haLow, haClose,haDiffCo; haOpen=(haOpen1[i+1]+haClose1[i+1])/2; haOpen1[i]=haOpen。 haClose=(Open[i]+High[i]+Low[i]+Close[i])/4; haClose1[i]=haCloseとする。 haHigh=MathMax(haOpen,High[i]); haLow=MathMin(haOpen,Low[i])。 文字列 name1 = "Heikin-Ashi-HL-"+i; if(ObjectFind(name1) != -1) ObjectDelete(name1); ObjectCreate(name1, OBJ_TREND, window, Time[i], haHigh, Time[i], haLow); ObjectSet(name1, OBJPROP_STYLE, STYLE_SOLID); ObjectSet(name1, OBJPROP_RAY, 0); ObjectSet(name1, OBJPROP_WIDTH, 2); 文字列 name2 = "Heikin-Ashi-OC-"+i; if(ObjectFind(name2) != -1) ObjectDelete(name2); ObjectCreate(name2, OBJ_RECTANGLE, window, Time[i], haOpen, Time[i], haClose); ObjectSet(name2, OBJPROP_WIDTH, 5); //ObjectSet(name2, OBJPROP_STYLE, STYLE_SOLID); ObjectSet(name2, OBJPROP_RAY, 0); if (haOpen < haClose) {。 ObjectSet(name1, OBJPROP_COLOR, Chartreuse); ObjectSet(name2, OBJPROP_COLOR, Chartreuse); }else{ ObjectSet(name1, OBJPROP_COLOR, Red); ObjectSet(name2, OBJPROP_COLOR, Red)。 } } return(0); } I am a newbie アスク! コーディングのヘルプ Ray 2008.02.11 03:13 #24 ローソク足がトレンドラインであること ボディ幅 2 またはより可能性が高い、3 私はあなたがラインの "丸み "について話しているのか分からない 画像を表示する smohamedfarouk 2008.02.11 07:37 #25 写真をご覧ください。 smohamedfarouk 2008.02.11 07:43 #26 左にスクロールすると、このようになることがあります(緑と赤の混在)。 Ray 2008.02.11 07:49 #27 はい、わかりました。 そこに削除すべき古びたバーがあるのでは? smohamedfarouk 2008.02.11 08:03 #28 ご回答ありがとうございます。 Ray 2008.02.11 08:08 #29 バーが重複していないか、何が起きているのか? smohamedfarouk 2008.02.11 08:56 #30 Phyさん、こんにちは。 もし私が正しければ、問題は私が以下のことをすることに起因しているかもしれません。 SetIndexStyle(0, DRAW_LINE)。 SetIndexStyle(1, DRAW_LINE).SetIndexStyle(1,DRAW_LINE)です。 SetIndexStyle(2, DRAW_LINE)を設定します。 SetIndexStyle(3, DRAW_LINE).SetIndexStyle(3,DRAW_LINE)。 SetIndexStyle(4, DRAW_LINE).SetIndexStyle(4,DRAW_LINE)。 SetIndexStyle(5, DRAW_LINE)を設定します。 私は上記を実行し、バッファを描画するようにし、同時に私はこれを実行します。 if(ObjectFind(name1) != -1) ObjectDelete(name1); ObjectCreate(name1, OBJ_TREND, window, Time[i], haHigh, Time[i], haLow); ObjectSet(name1, OBJPROP_STYLE, STYLE_SOLID); ObjectSet(name1, OBJPROP_RAY, 0); ObjectSet(name1, OBJPROP_WIDTH, 2); 文字列 name2 = "Heikin-Ashi-OC-"+i; if(ObjectFind(name2) != -1) ObjectDelete(name2); ObjectCreate(name2, OBJ_TREND, window, Time[i], haOpen, Time[i], haClose); ObjectSet(name2, OBJPROP_WIDTH, 5); //ObjectSet(name2, OBJPROP_STYLE, STYLE_SOLID).ObjectSet(name2,OBJPROP_STYLE,SOLID)です。 ObjectSet(name2, OBJPROP_RAY, 0); だから、バッファのデータとオブジェクトの両方が互いに重なって描画されます、私は正しいですか? 私はバッファをデータ保存に使っているだけで、描画はしたくないので、index style codeの設定を削除する必要がありますか? 私は正しいですか? I am a newbie The Murrey Math Trading マリー数学トレーディングシステム 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ありがとうございました
上記のコードでオブジェクトを使用して線を描いていますが、この線はSetIndexStyle(0, DRAW_LINE) でどのような役割を担っているのでしょうか?バッファの役割は理解していますが、なぜバッファがインデックスにリンクされなければならないのか、なぜインデックスがスタイルを持たなければならないのかがわかりません。
上記のコードを使って、ローソク足がカーブしたエッジを持ち、価格チャートのように純粋な長方形でないことをご自身で確認されましたか?
すでに説明したとおりです。
矩形が必要な場合は、トレンドラインオブジェクトの代わりに矩形を描画します。
こんにちは、Phyさん。
RECTANGLEオプションが動作しないため、ご迷惑をおかけしております。
最後にもう一度試してみてください。この長方形が正しく動作するようになればいいのですが。
#プロパティ indicator_separate_window
#property indicator_buffers 6
#property indicator_color1 CLR_NONE
#property indicator_color2 CLR_NONE
double high[];
double low[];
double open[];
double close[];
double haOpen1[];
double haClose1[];
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init()
{
SetIndexStyle(0, DRAW_LINE)を設定します。
SetIndexStyle(1, DRAW_LINE)を設定します。
SetIndexStyle(2, DRAW_LINE).SetIndexStyle(2,DRAW_LINE)。
SetIndexStyle(3, DRAW_LINE).SetIndexStyle(3,DRAW_LINE)。
SetIndexStyle(4, DRAW_LINE).SetIndexStyle(4,DRAW_LINE)。
SetIndexStyle(5, DRAW_LINE).SetIndexStyle(5,DRAW_LINE)です。
SetIndexBuffer(0, high)を設定します。
SetIndexBuffer(1, low); SetIndexBuffer(1, low);
SetIndexBuffer(2、open);
SetIndexBuffer(3、close);
SetIndexBuffer(4, haOpen1);
SetIndexBuffer(5, haClose1);
return(0);
}
//+------------------------------------------------------------------+
//|カスタムインジケータ初期化関数|||etc.
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| カスタムインジケータイテレーション関数
//+------------------------------------------------------------------+
int start(){
string basename = "Heikin-Ashi";
IndicatorShortName(basename);
int window = WindowFind(basename);
for (int i = Bars-100; i >= 0; i--){.
// これら2つのインデックスは、サブウィンドウの大きさを制御するために使用されます。
// これらは表示されません
high[i] = High[i];
low[i] = Low[i];
double haOpen, haHigh, haLow, haClose,haDiffCo;
haOpen=(haOpen1[i+1]+haClose1[i+1])/2;
haOpen1[i]=haOpen。
haClose=(Open[i]+High[i]+Low[i]+Close[i])/4;
haClose1[i]=haCloseとする。
haHigh=MathMax(haOpen,High[i]);
haLow=MathMin(haOpen,Low[i])。
文字列 name1 = "Heikin-Ashi-HL-"+i;
if(ObjectFind(name1) != -1) ObjectDelete(name1);
ObjectCreate(name1, OBJ_TREND, window, Time[i], haHigh, Time[i], haLow);
ObjectSet(name1, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(name1, OBJPROP_RAY, 0);
ObjectSet(name1, OBJPROP_WIDTH, 2);
文字列 name2 = "Heikin-Ashi-OC-"+i;
if(ObjectFind(name2) != -1) ObjectDelete(name2);
ObjectCreate(name2, OBJ_RECTANGLE, window, Time[i], haOpen, Time[i], haClose);
ObjectSet(name2, OBJPROP_WIDTH, 5);
//ObjectSet(name2, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(name2, OBJPROP_RAY, 0);
if (haOpen < haClose) {。
ObjectSet(name1, OBJPROP_COLOR, Chartreuse);
ObjectSet(name2, OBJPROP_COLOR, Chartreuse);
}else{
ObjectSet(name1, OBJPROP_COLOR, Red);
ObjectSet(name2, OBJPROP_COLOR, Red)。
}
}
return(0);
}
ローソク足がトレンドラインであること
ボディ幅 2 またはより可能性が高い、3
私はあなたがラインの "丸み "について話しているのか分からない
画像を表示する
左にスクロールすると、このようになることがあります(緑と赤の混在)。
はい、わかりました。
そこに削除すべき古びたバーがあるのでは?
バーが重複していないか、何が起きているのか?
Phyさん、こんにちは。
もし私が正しければ、問題は私が以下のことをすることに起因しているかもしれません。
SetIndexStyle(0, DRAW_LINE)。
SetIndexStyle(1, DRAW_LINE).SetIndexStyle(1,DRAW_LINE)です。
SetIndexStyle(2, DRAW_LINE)を設定します。
SetIndexStyle(3, DRAW_LINE).SetIndexStyle(3,DRAW_LINE)。
SetIndexStyle(4, DRAW_LINE).SetIndexStyle(4,DRAW_LINE)。
SetIndexStyle(5, DRAW_LINE)を設定します。
私は上記を実行し、バッファを描画するようにし、同時に私はこれを実行します。
if(ObjectFind(name1) != -1) ObjectDelete(name1);
ObjectCreate(name1, OBJ_TREND, window, Time[i], haHigh, Time[i], haLow);
ObjectSet(name1, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(name1, OBJPROP_RAY, 0);
ObjectSet(name1, OBJPROP_WIDTH, 2);
文字列 name2 = "Heikin-Ashi-OC-"+i;
if(ObjectFind(name2) != -1) ObjectDelete(name2);
ObjectCreate(name2, OBJ_TREND, window, Time[i], haOpen, Time[i], haClose);
ObjectSet(name2, OBJPROP_WIDTH, 5);
//ObjectSet(name2, OBJPROP_STYLE, STYLE_SOLID).ObjectSet(name2,OBJPROP_STYLE,SOLID)です。
ObjectSet(name2, OBJPROP_RAY, 0);
だから、バッファのデータとオブジェクトの両方が互いに重なって描画されます、私は正しいですか?
私はバッファをデータ保存に使っているだけで、描画はしたくないので、index style codeの設定を削除する必要がありますか?
私は正しいですか?