![]() |
在這個頁面顯示本主題全部的 24 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [求救][問題]線性回歸通道值求救 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=23594)
[求救][問題]線性回歸通道值求救
以此例
請問各位前輩要怎修改才能不需隨十字線而是隨每根K棒求得上中下三值
變成線型般呈現
//===========底下原碼===================
//drawtext(sysparam(2)=barpos,c,'板塊:'+blkname),colorccffff,align4;
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:=forcast(c,t+1)COLORWHITE;
Ay:=yc[p+t]-yk[p+t]*t;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
__________________
jhong
回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
以此例
請問各位前輩要怎修改才能不需隨十字線而是隨每根K棒求得上中下三值
變成線型般呈現
//===========底下原碼===================
//drawtext(sysparam(2)=barpos,c,'板塊:'+blkname),colorccffff,align4;
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:=forcast(c,t+1)COLORWHITE;
Ay:=yc[p+t]-yk[p+t]*t;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
版主
那我利用另個方式
yc:forcast(c,t+1)COLORWHITE,LINEDOT;//(中後值)
前中: (yc)-(yk)*t,COLORMAGENTA;//(中前值)
我發現"中"的前後值我用這樣表述是我想要的
但
1:"上"的前後值
2:"下"的前後值
我要怎麼求得頭打結了!要怎麼求得類似
"yc"和"前中"這樣的表達線值?
因為我須知道每根K線當下的
1:"上"的前後值
2:"下"的前後值
3::"中"的前後值
如今3::"中"的前後值我已求得,另1跟2得求救版主了
謝謝!
__________________
jhong
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:forcast(c,t+1)COLORWHITE,LINEDOT;//
Ay:yc[p+t]-yk[p+t]*t;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
前中值: (yc)-(yk)*t,COLORMAGENTA;//(已求出是我要的正確值)
後中值:yc;//(已求出是我要的正確值)
前上值:Ay+js,COLORWHITE,LINEDOT;//如何像前中值與後中值一樣隨每根K棒固定住
後上值:By+js,COLORMAGENTA;//如何像前中值與後中值一樣隨每根K棒固定住
前下值:Ay-jq,COLORWHITE,LINEDOT;//如何像前中值與後中值一樣隨每根K棒固定住
後下值:By-jq,COLORGREEN;//如何像前中值與後中值一樣隨每根K棒固定住
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
//=========以上為原碼===================
請問
前上值
後上值
前下值
後下值
有何方法讓這四值不隨十字線變動
而是跟隨每根K棒的顯現
像"前中值"與"後中值"般顯現
__________________
jhong
引用:
最初由 jhong 發表
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:forcast(c,t+1)COLORWHITE,LINEDOT;//
Ay:yc[p+t]-yk[p+t]*t;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
前中值: (yc)-(yk)*t,COLORMAGENTA;//(已求出是我要的正確值)
後中值:yc;//(已求出是我要的正確值)
前上值:Ay+js,COLORWHITE,LINEDOT;//如何像前中值與後中值一樣隨每根K棒固定住
後上值:By+js,COLORMAGENTA;//如何像前中值與後中值一樣隨每根K棒固定住
前下值:Ay-jq,COLORWHITE,LINEDOT;//如何像前中值與後中值一樣隨每根K棒固定住
後下值:By-jq,COLORGREEN;//如何像前中值與後中值一樣隨每根K棒固定住
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
//=========以上為原碼===================
請問
前上值
後上值
前下值
後下值
有何方法讓這四值不隨十字線變動
而是跟隨每根K棒的顯現
像"前中值"與"後中值"般顯現
那可利用前中值求得前上值,後中值求得後上值嗎
不要用SYSPARAM十字線的方式來求得
我其實不要用十字線這樣移動,想用我目前的
前中值線及後中值線這樣呈現
但不知怎麼寫也部會寫
__________________
jhong
引用:
最初由 jhong 發表
那可利用前中值求得前上值,後中值求得後上值嗎
不要用SYSPARAM十字線的方式來求得
我其實不要用十字線這樣移動,想用我目前的
前中值線及後中值線這樣呈現
但不知怎麼寫也部會寫
引用:
最初由 cgjj 發表
這不是程式如何寫的問題!
是能不能這樣算?,怎樣去算的問題...
還是那句話~ "計算原理會決定應用的特性"
當您要去改變計算原理基準時,您必須提出可行的算法
沒有算法就沒有答案!
我們僅能就程式寫法上做技術支援!
__________________
jhong
回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
以此例
請問各位前輩要怎修改才能不需隨十字線而是隨每根K棒求得上中下三值
變成線型般呈現
//===========底下原碼===================
//drawtext(sysparam(2)=barpos,c,'板塊:'+blkname),colorccffff,align4;
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:=forcast(c,t+1)COLORWHITE;
Ay:=yc[p+t]-yk[p+t]*t;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
__________________
jhong
整個重新看了一下!
猜測這或許是您想要的結果~~
對錯請自行判斷
input:T(60,1,9999,1);
yk:=slope(c,t+1);
yc:=forcast(c,t+1);
中:yc-yk*t;
上:中+hhv(h-中,t+1);
下:中-llv(中-l,t+1);
引用:
最初由 cgjj 發表
整個重新看了一下!
猜測這或許是您想要的結果~~
對錯請自行判斷
input:T(60,1,9999,1);
yk:=slope(c,t+1);
yc:=forcast(c,t+1);
中:yc-yk*t;
上:中+hhv(h-中,t+1);
下:中-llv(中-l,t+1);
__________________
jhong
回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
//===========底下原碼===================
//drawtext(sysparam(2)=barpos,c,'板塊:'+blkname),colorccffff,align4;
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:=forcast(c,t+1)COLORWHITE;
Ay:=yc[p+t]-yk[p+t]*t;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
__________________
jhong
回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
版主
其實我只是要在條件成立ˊ時就在該K棒畫上這60天參數的這三條通道線並向右延伸
例如
成立條件=20220103這天
可請您寫個範例好嗎
謝謝您
回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 cgjj 發表
請先確定前面回答的
input:T(60,1,9999,1);
yk:=slope(c,t+1);
yc:=forcast(c,t+1);
中:yc-yk*t;
上:中+hhv(h-中,t+1);
下:中-llv(中-l,t+1);
其計算的值,是否為您期待想要的值無誤
若沒確定,後續的就先不討論~~
__________________
jhong
回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
上跟下的值不是喔!
對的話應該對應到線頭或是線尾值會相等
但我對照後都沒有
例如中值就有對應到
//===========底下原碼===================
input:T(60,1,9999,1);
p:=if(SYSPARAM(1)<datacount-t,SYSPARAM(1)-t,SYSPARAM(1)-t);
Ax:=p=BARPOS;//A點橫坐標
yk:=slope(c,t+1);//通道斜率
yc:forcast(c,t+1)COLORWHITE,LINEDOT;
Ay:=yc[p+t]-yk[p+t]*t;//A點縱坐標
//前中:yc-yk*t,COLORMAGENTA,LINEDOT;//A點縱坐標
Bx:=ref(Ax,t);//B點橫坐標
By:=yc[p+t];//B點縱坐標
中:LINEVALUE(Ax,Ay,Bx,By,0,0)COLORYELLOW;
js:=hhv(h-中,t+1);
jq:=hhv(中-L,t+1);
上:LINEVALUE(Ax,Ay+js[p+t],Bx,By+js[p+t],0,0),COLORMAGENTA;
下:LINEVALUE(Ax,Ay-jq[p+t],Bx,By-jq[p+t],0,0),COLORGREEN;
STICKLINE(Ax or Bx,上,下,0.01,0)COLORGRAY,POINTDOT;
// input:T(60,1,9999,1);
// yk:=slope(c,t+1);
// yc:=forcast(c,t+1);
// 中:yc-yk*t;
// 上:中+hhv(h-中,t+1);
// 下:中-llv(中-l,t+1);
A中:yc-yk*t;
A上:A中+hhv(h-A中,t+1);
A下:A中-llv(A中-l,t+1);
回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 cgjj 發表
什麼叫做 "對的話應該對應到線頭或是線尾值會相等" !!!
您到底是要線頭? 還是要線尾? 還是...
麻煩您以 台當月+ 日線為例,將十字游標移動至 20230221,將當時的圖抓下來。
標示出您想在 20230221 當根,算得的 上、中、下 值為何? (請貼圖)
這樣才容易比較清楚您想要取當時哪個部位的值,雙方才好溝通。
__________________
jhong
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:此圖程式碼
最初由 jhong 發表
__________________
jhong
回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 cgjj 發表
什麼叫做 "對的話應該對應到線頭或是線尾值會相等" !!!
您到底是要線頭? 還是要線尾? 還是...
麻煩您以 台當月+ 日線為例,將十字游標移動至 20230221,將當時的圖抓下來。
標示出您想在 20230221 當根,算得的 上、中、下 值為何? (請貼圖)
這樣才容易比較清楚您想要取當時哪個部位的值,雙方才好溝通。
__________________
jhong
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
我的線頭就是前值,線尾就是後值
前中值與後中值都已線型化了
我是想把上下兩條的前後值也線型化
這樣我就可利用這前後點劃線了
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 cgjj 發表
請如前面所說,抓畫面貼圖標示,謝謝!
因為其計算上比較繁瑣~~
我要先確認您所講的,跟我理解的是相同的!
確認後才會協助撰寫
__________________
jhong
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 cgjj 發表
請如前面所說,抓畫面貼圖標示,謝謝!
因為其計算上比較繁瑣~~
我要先確認您所講的,跟我理解的是相同的!
確認後才會協助撰寫
__________________
jhong
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
我的線頭就是前值(虛線),線尾就是後值(實線)
中線的前中值與後中值都已線型化了
我是想把上下兩條的前後值也線型化
這樣我就可利用這前後點劃線了
紅圈起來的兩條是通道中線的前後值
希望另兩條的前後ˊ值也能線型化
謝謝版主
原碼:
input:T(60,1,9999,1); yk:=slope(c,t+1);//通道斜率 YC:=forcast(c,t+1) COLORWHITE,LINEDOT; 首上:YK*0; 首中:YC-yk*t; 首下:首上; 尾上:首上; 尾中:YC; 尾下:首上; HH:=H; LL:=L; for i=t+1 to datacount do begin MH:=0; ML:=0; for j=i downto i-t+1 do begin SM:=尾中[i]-YK[i]*(i-j); SH:=HH[j]-SM; if SH>MH then MH:=SH; SL:=SM-LL[j]; if SL>ML then ML:=SL; end; 尾上[i]:=尾中[i]+MH; 首上[i]:=尾上[i]-yk[i]*t; 尾下[i]:=尾中[i]-ML; 首下[i]:=尾下[i]-yk[i]*t; end;
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 cgjj 發表
有圖就清楚精確多了,且容易理解!
文字描述比較含糊,且用 "前後" 二字,容易誤解
以下範例將文字調整為 "首尾"
原碼:
input:T(60,1,9999,1); yk:=slope(c,t+1);//通道斜率 YC:=forcast(c,t+1) COLORWHITE,LINEDOT; 首上:YK*0; 首中:YC-yk*t; 首下:首上; 尾上:首上; 尾中:YC; 尾下:首上; HH:=H; LL:=L; for i=t+1 to datacount do begin MH:=0; ML:=0; for j=i downto i-t+1 do begin SM:=尾中[i]-YK[i]*(i-j); SH:=HH[j]-SM; if SH>MH then MH:=SH; SL:=SM-LL[j]; if SL>ML then ML:=SL; end; 尾上[i]:=尾中[i]+MH; 首上[i]:=尾上[i]-yk[i]*t; 尾下[i]:=尾中[i]-ML; 首下[i]:=尾下[i]-yk[i]*t; end;
__________________
jhong
回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: 回覆: [求救][問題]線性回歸通道值求救
引用:
最初由 jhong 發表
太棒了!完全正確!
太感謝版主了謝謝您!
全部時間均為台灣時間, 現在時間為19:37 | 在這個頁面顯示本主題全部的 24 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.