朝型フラットを突破する - どのペアで? - ページ 22 1...151617181920212223 新しいコメント gince 2013.04.17 10:59 #211 Dserg さん、Nlinの代わりにチャンネル開始時刻とチャンネル終了 時刻を使ったインジケータhttp://Dserg-LinRegressionBreakout_v1.1.mq4 の別バージョンを作っていただけませんか?大変ありがたいことです。 khorosh 2013.04.17 13:41 #212 gince:Dserg さん、Nlinの代わりにチャンネル開始時刻とチャンネル終了 時刻を使ったインジケータhttp://Dserg-LinRegressionBreakout_v1.1.mq4 の別バージョンを作っていただけませんか?大変ありがたいことです。前のチャンネルが終わった後、必ずしも新しいチャンネルが形成されるとは限らない方が良い。新しいトレンドは、前のチャネルが終了する前に始まることが多いので。すなわち、重なり合ったチャンネルを形成する可能性があり、画像の見栄えをよくするために、隣接するチャンネルは異なる色であるべきです(2色で十分です)。 gince 2013.04.17 14:52 #213 自分でもやってみたが、うまくいかなかった。もしかしたら、誰かが訂正してくれるかもしれません。//+------------------------------------------------------------------+ //| | //| Èíäèêàòîð äëÿ àâòîìàòè÷åñêîãî ïîñòðîåíèÿ ñóæåíèÿ | //| êàíàëîâ ëèíåéíîé ðåãðåññèè | //| https://www.mql5.com/ru/users/dserg | //+------------------------------------------------------------------+ #property copyright "Dserg, 2010" #property link "https://www.mql5.com/ru/users/dserg" //---- indicator settings #property indicator_chart_window #property indicator_buffers 8 #property indicator_color1 DeepSkyBlue #property indicator_color2 DeepSkyBlue #property indicator_color3 FireBrick #property indicator_color4 DeepSkyBlue #property indicator_color5 DeepSkyBlue #property indicator_color6 Yellow #property indicator_color7 HotPink #property indicator_color8 LawnGreen //---- buffers double B0[]; double B1[]; double Stop[]; double B3[]; double B4[]; double Up[]; double Dn[]; double Target[]; extern string S1="Ìèí. äëèíà êàíàëà ëèíåéíîé ðåãðåññèè"; extern int Nlin; extern int start = 20; extern int stop = 7; extern string S2="Ìàêñ. âûñîòà êàíàëà â ïóíêòàõ"; extern int r0=150; extern string S3="Öåëü ïðè ïðîáîå îòí. øèðèíû êàíàëà"; extern double t0=2.618; extern string S4="Èñïîëüçîâàòü äëÿ ðàñ÷¸òà Close,\n åñëè false - High/Low"; extern bool useClose=true; extern string S5="Êîëè÷åñòâî áàðîâ äëÿ ðàññ÷¸òà"; extern int Nbars=5000; bool isChannel; datetime chEnd; double a0; double b0; double range0; datetime PrevTime; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- 3additional buffers are used for counting. //---- drawing settings SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,2); SetIndexBuffer(0, B0); SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,2); SetIndexBuffer(1, B1); SetIndexStyle(2,DRAW_ARROW,0,2); SetIndexBuffer(2, Stop); SetIndexStyle(3,DRAW_LINE,STYLE_DOT); SetIndexBuffer(3, B3); SetIndexStyle(4,DRAW_LINE,STYLE_DOT); SetIndexBuffer(4, B4); SetIndexStyle(5,DRAW_ARROW,0,1); SetIndexBuffer(5, Up); SetIndexArrow(5, 233); SetIndexStyle(6,DRAW_ARROW,0,1); SetIndexBuffer(6, Dn); SetIndexArrow(6, 234); SetIndexStyle(7,DRAW_ARROW,0,1); SetIndexBuffer(7, Target); SetIndexArrow(7, 231); SetIndexEmptyValue(0,0.0); SetIndexEmptyValue(1,0.0); SetIndexEmptyValue(2,0.0); SetIndexEmptyValue(3,0.0); SetIndexEmptyValue(4,0.0); SetIndexEmptyValue(5,0.0); SetIndexEmptyValue(6,0.0); SetIndexEmptyValue(7,0.0); SetIndexLabel(0,"Channel Low"); SetIndexLabel(1,"Channel High"); SetIndexLabel(2,"Stop/Reverse"); SetIndexLabel(3,"Channel Low Extended"); SetIndexLabel(4,"Channel High Extended"); SetIndexLabel(5,"BUY Signal"); SetIndexLabel(6,"SELL Signal"); SetIndexLabel(7,"Target"); isChannel=false; return(0); } int deinit() { } //--------------------------------------------------------------------------------------- int start() { Nlin = (24 - (start-stop))*60/Period(); Comment("Nlin = "+ Nlin); //if (iTime(NULL,PERIOD_D1,0)!=PrevTime) return(0); //PrevTime = iTime(NULL,PERIOD_D1,0); if(Bars-IndicatorCounted()==0) return(0); // int loopbegin = Bars - IndicatorCounted()+20*Nlin; int loopbegin = Nbars; int i,j; double a,b,c, sumy=0.0, sumx=0.0, sumxy=0.0, sumx2=0.0, h=0.0,l=0.0, range = 0.0; isChannel=false; for(i = loopbegin; i >= 0; i--) { B0[i]=0; B1[i]=0; B3[i]=0; B4[i]=0; Up[i]=0; Dn[i]=0; Stop[i]=0; Target[i]=0; } for(i = loopbegin; i >= 0; i--) { //ó íàñ óæå åñòü êàíàë, æä¸ì, ïîêà åãî ïðîáü¸ò if (isChannel) { //double up0=a0*(i-chEnd)+b0+range0; //double dn0=a0*(i-chEnd)+b0-range0; double up0=a0*i+b0+range0; double dn0=a0*i+b0-range0; B3[i]=up0; B4[i]=dn0; //ïðîâåðÿåì ïðîáèòèå //ââåðõ if (Open[i]>up0) { Up[i]=up0; Stop[i]=dn0; Target[i]=up0+(up0-dn0)*(t0-1); isChannel=false; //continue; } //âíèç if (Open[i]<dn0) { Dn[i]=dn0; Stop[i]=up0; Target[i]=dn0-(up0-dn0)*(t0-1); isChannel=false; //continue; } continue; } bool flag=false; for (j=0;j<Nlin+1;j++) { if (B3[i+j]>0.0&&!isChannel) { flag=true; } } if (flag) continue; a=0.0;b=0.0;c=0.0; sumx=0.0;sumy=0.0; sumxy=0.0;sumx2=0.0; h=0.0;l=0.0; //ñ÷èòàåì êàíàë ëèíåéíîé ðåãðåññèè îò i+Nlin äî i if(StrToTime(stop) != Hour())return(0); for(j=0; j<Nlin; j++) { sumy+=Close[i+j]; sumxy+=Close[i+j]*(i+j); sumx+=(i+j); sumx2+=(i+j)*(i+j); } c=sumx2*Nlin-sumx*sumx; if(c==0.0) { Alert("Error in linear regression!"); return(-1); } a=(sumxy*Nlin-sumx*sumy)/c; b=(sumy-sumx*a)/Nlin; //îïðåäåëÿåì ãðàíèöû êàíàëà for(j=0;j<Nlin;j++) { double LR=a*(i+j)+b; if (useClose) { if(Close[j+i]-LR > h) h = Close[i+j]-LR; if(LR - Close[i+j]> l) l = LR - Close[i+j]; } else { if(High[j+i]-LR > h) h = High[i+j]-LR; if(LR - Low[i+j]> l) l = LR - Low[i+j]; } } range = MathMax(l,h); //ïðîâåðêà øèðèíû êàíàëà //if (range<r0*Point) { //åñòü êàíàë, ñîõðàíÿåì isChannel=true; a0=a; b0=b; chEnd=iTime(NULL,0,i); range0=range; for (j=0;j<Nlin;j++) { B3[i+j]=a*(i+j)+b+range; B4[i+j]=a*(i+j)+b-range; B0[i+j]=a*(i+j)+b+range; B1[i+j]=a*(i+j)+b-range; } //} } return(0); } //+------------------------------------------------------------------+ Алексей Тарабанов 2013.04.17 18:54 #214 B0[k]=B3[k]、B1[k]=B4[k]、k=anyoneの定義で持っています。 gince 2013.04.18 04:00 #215 tara: У Вас по определению получается B0[k]=B3[k]; B1[k]=B4[k]; k=любое tara: 定義により、B0[k]=B3[k]; B1[k]=B4[k]; k=anywhereが得られます。|Dsergの著者である。でも、こうでなくっちゃね。B0[k]; B1[k]はSTYLE_SOLIDチャンネルライン,その他のラインはSTYLE_DOT ラインの延長線上コードで変更してみたものは太字で表記しています。最初にバーの本数、つまりチャンネルの長さを計算しました。そして、1日に1回チャネルを描画し、新しい日があるかどうかをチェックします。そして、タイムチェックを入れました。チャンネルの時間が切れていれば、それを読み取って描けばいいのです。が、うまくいかない。 Роман 2013.04.20 00:42 #216 スレッドを読んでいない。こちらで ご覧になりましたか? gince 2013.04.20 16:31 #217 違う角度から見てみたいが、研究には指標が必要だ。自分では書けないし、誰も私の失敗を訂正してくれない。チャンネルを手書きで描いているのですが、どれからどのチャンネルまで描けばいいのか、その棒にうんざりしています。10カ国の歴史は、何も解決できない。 Роман 2013.10.13 00:54 #218 話題が面白い。もっと深く知りたいという欲求がある...。 また、こちらにはTSの説明もあります。 見つけたものは「朝刊フラット故障」スレッドではなく、こちらに投稿させていただきます。 Роман 2014.05.15 15:02 #219 プロフィール登録で全く偶然にこのトピックを見つけました。 この方向で掘っているのは誰? IMHO - もっと深く掘り下げるべき時だ...。 Yuriy Zaytsev 2014.05.15 18:48 #220 Roman.: プロフィール登録で全く偶然にこのトピックを見つけました。 この方向で掘っているのは誰? IMHO - もっと深く掘り下げるべき時だ...。 トレンドはスーパー... 平坦な方向では、私は決して故障に陥らないのですが......。 1...151617181920212223 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
Dserg さん、Nlinの代わりにチャンネル開始時刻とチャンネル終了 時刻を使ったインジケータhttp://Dserg-LinRegressionBreakout_v1.1.mq4 の別バージョンを作っていただけませんか?
大変ありがたいことです。Dserg さん、Nlinの代わりにチャンネル開始時刻とチャンネル終了 時刻を使ったインジケータhttp://Dserg-LinRegressionBreakout_v1.1.mq4 の別バージョンを作っていただけませんか?
大変ありがたいことです。前のチャンネルが終わった後、必ずしも新しいチャンネルが形成されるとは限らない方が良い。新しいトレンドは、前のチャネルが終了する前に始まることが多いので。すなわち、重なり合ったチャンネルを形成する可能性があり、画像の見栄えをよくするために、隣接するチャンネルは異なる色であるべきです(2色で十分です)。
自分でもやってみたが、うまくいかなかった。もしかしたら、誰かが訂正してくれるかもしれません。
У Вас по определению получается B0[k]=B3[k]; B1[k]=B4[k]; k=любое
tara:
定義により、B0[k]=B3[k]; B1[k]=B4[k]; k=anywhereが得られます。
|Dsergの著者である。でも、こうでなくっちゃね。B0[k]; B1[k]はSTYLE_SOLIDチャンネルライン,その他のラインはSTYLE_DOT ラインの延長線上
コードで変更してみたものは太字で表記しています。最初にバーの本数、つまりチャンネルの長さを計算しました。そして、1日に1回チャネルを描画し、新しい日があるかどうかをチェックします。そして、タイムチェックを入れました。チャンネルの時間が切れていれば、それを読み取って描けばいいのです。
が、うまくいかない。
話題が面白い。もっと深く知りたいという欲求がある...。
また、こちらにはTSの説明もあります。
見つけたものは「朝刊フラット故障」スレッドではなく、こちらに投稿させていただきます。
プロフィール登録で全く偶然にこのトピックを見つけました。
この方向で掘っているのは誰?
IMHO - もっと深く掘り下げるべき時だ...。
プロフィール登録で全く偶然にこのトピックを見つけました。
この方向で掘っているのは誰?
IMHO - もっと深く掘り下げるべき時だ...。