マルチタイムフレーム・インディケーター - ページ 18

 

Forex_Off_Trend Oscillator (オフ・トレンド・オシレーター)

トレンドの変化を判断する最も正確なOscillatorの1つが

Forex_Off_Trend Oscillatorです。先週届いた最新版は、ForexTrend_v2というヒストグラム・バージョンです。この開発にはとても期待していたのですが、新しいものは全くダメです。ひどくリペイントされるのですが、これを修正できれば、MTF-oscillatorとして非常に良い補助ツールになりそうです。

見ていただいて、MTFのフォーマットにしていただけると非常にうれしいということで、ここに両方添付しています。ヒストグラム形式は、ウィンドウを狭めても、方向が変わるタイミングが一目でわかる優れものです。

皆さんからのご意見を楽しみにしています。よろしくお願いします。

ファイル:
 

オフトレンド

基本的に同じコードにヒストコードとデフォルトのSSP番号が変更されているように見えますね。

もう少し分離してくれると、パッと見でわかるんだけどね。

さもなければ

{

ExtHBuffer1=0;

ExtHBuffer2=-1 //<----...

以下は、タイムフレームの例です。

いつものように、再描画の問題に注意してください

//+------------------------------------------------------------------+

//| Copy and Pasted by Lowphat |

//| |

//+------------------------------------------------------------------+

#property copyright " "

#property link " "

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Lime

#property indicator_color2 Red

#property indicator_maximum 1

#property indicator_minimum -1

extern int TimeFrame=30;

extern int SSP=7;

extern double Kmax=50.6;

double ExtMapBuffer1[];

double ExtMapBuffer2[];

int init()

{

SetIndexStyle(0,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(1,ExtMapBuffer2);

switch(TimeFrame)

{

case 1 : string TimeFrameStr="Period_M1"; break;

case 5 : TimeFrameStr="Period_M5"; break;

case 15 : TimeFrameStr="Period_M15"; break;

case 30 : TimeFrameStr="Period_M30"; break;

case 60 : TimeFrameStr="Period_H1"; break;

case 240 : TimeFrameStr="Period_H4"; break;

case 1440 : TimeFrameStr="Period_D1"; break;

case 10080 : TimeFrameStr="Period_W1"; break;

case 43200 : TimeFrameStr="Period_MN1"; break;

default : TimeFrameStr="Current Timeframe";

}

string short_name;

short_name=("FxTrend("+TimeFrame+")");

IndicatorShortName(short_name);

SetIndexLabel(0,short_name);

}

//----

return(0);

int start()

{

datetime TimeArray[];

int i,limit,y=0,counted_bars=IndicatorCounted();

// Plot defined time frame on to current time frame

ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);

limit=Bars-counted_bars;

limit=Bars-counted_bars;

for(i=0,y=0;i<limit;i++)

{

if (Time<TimeArray[y]) y++;

ExtMapBuffer1=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,0,y);

ExtMapBuffer2=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,1,y);

}

return(0);

}
 
lowphat:
基本的に同じコードにヒストコードとデフォルトのSSP番号を変えただけのように見えますが、これはv2の代わりにヒストか何かと呼びたいのかもしれません。

もう少し離すと、パッと見の印象が変わるので助かります。

さもなくば

{

ExtHBuffer1=0;

ExtHBuffer2=-1 //<----...

以下は、タイムフレームの例です。

いつものように、再描画の問題に注意してください

//+------------------------------------------------------------------+

//| Copy and Pasted by Lowphat |

//| |

//+------------------------------------------------------------------+

#property copyright " "

#property link " "

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Lime

#property indicator_color2 Red

#property indicator_maximum 1

#property indicator_minimum -1

extern int TimeFrame=30;

extern int SSP=7;

extern double Kmax=50.6;

double ExtMapBuffer1[];

double ExtMapBuffer2[];

int init()

{

SetIndexStyle(0,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_HISTOGRAM,EMPTY,2);

SetIndexBuffer(1,ExtMapBuffer2);

switch(TimeFrame)

{

case 1 : string TimeFrameStr="Period_M1"; break;

case 5 : TimeFrameStr="Period_M5"; break;

case 15 : TimeFrameStr="Period_M15"; break;

case 30 : TimeFrameStr="Period_M30"; break;

case 60 : TimeFrameStr="Period_H1"; break;

case 240 : TimeFrameStr="Period_H4"; break;

case 1440 : TimeFrameStr="Period_D1"; break;

case 10080 : TimeFrameStr="Period_W1"; break;

case 43200 : TimeFrameStr="Period_MN1"; break;

default : TimeFrameStr="Current Timeframe";

}

string short_name;

short_name=("FxTrend("+TimeFrame+")");

IndicatorShortName(short_name);

SetIndexLabel(0,short_name);

}

//----

return(0);

int start()

{

datetime TimeArray[];

int i,limit,y=0,counted_bars=IndicatorCounted();

// Plot defined time frame on to current time frame

ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);

limit=Bars-counted_bars;

limit=Bars-counted_bars;

for(i=0,y=0;i<limit;i++)

{

if (Time<TimeArray[y]) y++;

ExtMapBuffer1=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,0,y);

ExtMapBuffer2=iCustom(NULL,TimeFrame,"ForexTrend Histo",SSP,Kmax,1,y);

}

return(0);

}

Lowphatさん、ご返答ありがとうございます。しかし、私はプログラマーではないので、残念ながらほとんど意味をなしません。 - V2=ヒストグラムについては、あなたの意見に同意します。

他に何かご提案があればお願いします。

 

はい、どうぞ

テストする時間がなかったけど、大丈夫だと思う。

ファイル:
 
ValeoFX:
トレンドの変化i.m.o.を判断する最も正確なOscillatorの 一つが

Forex_Off_Trend Oscillator

である。先週届いた最新版は、ForexTrend_v2というヒストグラム版です。この開発にはとても期待していたのですが、新しいものは全くダメです。ひどくリペイントされるのですが、これを修正できれば、MTF-oscillatorとして非常に良い補助ツールになりそうです。

見ていただいて、MTFのフォーマットにしていただけると大変うれしいというお願いで、ここに両方添付しています。ヒストグラム形式は、ウィンドウを狭めても、方向が変わったときに一目でわかるようにするために優れたものです。

皆さんからのご意見をお待ちしています。よろしくお願いします。

言い方は悪いですが、そのような発言をされるのは理解できません。過去6本までリペイントして、トレンドの判断ができる最も精度の高いインジケーターの一つということでしょうか?

よろしくお願いします。

ファイル:
forex2.zip  119 kb
 
iGoR:
申し訳ありませんが、そのようなご発言ができることが理解できません。過去6本までリペイントするのですが、これをトレンドを判断する最も正確な指標の一つだと言うのですか!!!Yu4rik指標の正確さにも勝っています。

イゴール リペイントはそうかもしれませんが、しかし、リアルタイムでは非常に正確です。ですから、バックテストも できません。

さて、「Yu4rikの精度にさえ勝っている」というあなたの発言についてですが、あなたはYu4rikよりも正確だと言っているのでしょうか?申し訳ありませんが、私はここで少し混乱しています。

 
lowphat:

Lowphatさん、どうもありがとうございます。せっせとテストして報告します。

よろしくお願いします。

 

最後の数本のバーの色が変わり続けていて、確実にマニーを失うことがある。

 
ValeoFX:
Igorさん、リペイントはそうかもしれませんが、リアルタイムでは非常に正確です。さて、「Yu4rikの精度にさえ勝っている」という発言についてですが、Yu4rikよりも精度が高いということでしょうか?申し訳ありませんが、私はここで少し混乱しています。

リアルタイムで過去6本まで再描画されます。つまり、このインディケータを日足チャートに配置すると、6日分までの過去を再描画することができます。

私のzipフォルダの中で、リアルタイムで何をしたかを見ることができます。もし、1本だけ過去を塗り替えるようなインジケータがあれば、それは使い物になりません。

そのようなインジケータで作業することは、あなたが...私は6バー前に長い行くことを持っている(しかし、それは事実の後である)と言うのと同じであり、少し後に、私は6バー前に終了することを持っていることを言うでしょう。

こうすれば、ヒット率は100%になる。

YU4rikのインジケーターも、4、5本前までリペイントされるので、使い勝手が良い。だから、私がYU4rikに勝ったと言ったとき、それはさらに信頼性が低いことを意味します。

あのインジケータは、時間軸を後ろにずらすMAのようなものです(後知恵)。

だからそのインジケータは正確ではない......それはcr*pだ。

よろしくお願いします。

 
iGoR:
リアルタイムでは6本まで過去に塗り替えられます。つまり、このインディケータを日足チャートに配置すると、6日前までの過去を塗り替えることができます。

私のzipフォルダの中で、リアルタイムで何をしたのか見ることができます。もし、1本だけ過去を塗り替えるようなインジケータがあれば、それは使いものにならない。

そのようなインジケータを使うことは、あなたが「6本前にロングした」と言い、その少し後に「6本前に決済した」と言うのと同じことです。

こうすれば、ヒット率は100%になる。

YU4rikのインジケーターも、4、5本前までリペイントされるので、使い勝手が良い。だから、私がYU4rikに勝ったと言ったとき、それはさらに信頼性が低いことを意味します。

あのインジケータは、時間軸を後ろにずらすMAのようなものです(後知恵)。

だから、そのインジケータは正確ではないiitはcr*pです。

よろしくお願いします。

iGoRさん、この説明ありがとうございます。非常に感謝しています。

理由: