![]() |
總頁數 (2): [1] 2 » 在這個頁面顯示本主題全部的 16 個文章 |
奇狐社區論壇 (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=20086)
請問版主 特定時間點間收盤價的比較 這怎麼寫
版主大大您好
我想在分鐘線圖上,針對特定時間點(比方13:25)的收盤價作圖 : 若N個(比方說10個)13:25的收盤價間若相減值<10,就在兩收盤價間畫一條線,請問大大這要怎麼寫? 我完全沒有概念
勞請協助 萬分感謝
回覆: 請問版主 特定時間點間收盤價的比較 這怎麼寫
引用:
最初由 ericpai 發表
版主大大您好
我想在分鐘線圖上,針對特定時間點(比方13:25)的收盤價作圖 : 若N個(比方說10個)13:25的收盤價間若相減值<10,就在兩收盤價間畫一條線,請問大大這要怎麼寫? 我完全沒有概念
勞請協助 萬分感謝
差值的絕對值 , 即 兩者任一相減小於10 就可以了
抱歉 沒有 寫清楚 造成困擾ㄌ SORRY
進一步說明
10 個值中 任兩個值相減的絕對值若低於10 就在兩者之間劃一條線
這樣不知道有沒有比較清楚 謝謝您
或者這樣說
將13:25的收盤價(C10) 與 過去9次13:25的收盤價比較(C0~C9),若ABS(C10-C9)或ABS(C10-C8)或......ABS(C10-C0)中,只要有值介於0~10就畫一條線
大概是這樣子的 感激感激
引用:
最初由 ericpai 發表
或者這樣說
將13:25的收盤價(C10) 與 過去9次13:25的收盤價比較(C0~C9),若ABS(C10-C9)或ABS(C10-C8)或......ABS(C10-C0)中,只要有值介於0~10就畫一條線
大概是這樣子的 感激感激
是的 可能會不只一條
是要這樣話沒錯
謝謝您
引用:
最初由 ericpai 發表
是的 可能會不只一條
是要這樣話沒錯
謝謝您
原碼:
CC:=C; Ck:=time=132500; CkSP:=barslast(CK); SS:=SUMBARS(Ck,10); StKNo:=datacount-SS[datacount]+1; x:=SETLBOUND(CK,StKNo); VERTLINE(CK) color777777 linedot; D1:=CK*0; D2:=D1; D3:=D1; D4:=D1; D5:=D1; D6:=D1; D7:=D1; D8:=D1; D9:=D1; VARIABLE:S[10]=0; for i=datacount downto StKNo do begin i:=i-CkSP[i]; P:=0; for j=i-1 downto StKNo do begin j:=j-CkSP[j]; P:=P+1; k:=i-j; if ABS(CC[i]-CC[j])<10 then begin if P=1 then D1[i]:=k; if P=2 then D2[i]:=k; if P=3 then D3[i]:=k; if P=4 then D4[i]:=k; if P=5 then D5[i]:=k; if P=6 then D6[i]:=k; if P=7 then D7[i]:=k; if P=8 then D8[i]:=k; if P=9 then D9[i]:=k; end; end; end; DRAWSL(D1,C,(c-ref(C,D1))/D1,-D1,1) pxdn2; DRAWSL(D2,C,(c-ref(C,D2))/D2,-D2,1) pxdn2; DRAWSL(D3,C,(c-ref(C,D3))/D3,-D3,1) pxdn2; DRAWSL(D4,C,(c-ref(C,D4))/D4,-D4,1) pxdn2; DRAWSL(D5,C,(c-ref(C,D5))/D5,-D5,1) pxdn2; DRAWSL(D6,C,(c-ref(C,D6))/D6,-D6,1) pxdn2; DRAWSL(D7,C,(c-ref(C,D7))/D7,-D7,1) pxdn2; DRAWSL(D8,C,(c-ref(C,D8))/D8,-D8,1) pxdn2; DRAWSL(D9,C,(c-ref(C,D9))/D9,-D9,1) pxdn2;
謝謝版主
我試試看 萬分感謝
感謝版主 大致上就是我所需要的
不過
似乎只能畫出線圖中最後一次"13:25收盤價"往前比較10個"13:25收盤價", 如果要線圖中所有歷史資料的"13:25收盤價"都能向前作相同的比較 不知道可行嗎?
抱歉 問題很多 辛苦您了
我想要的結果 可能會比較類似下圖
下圖的寫法是往前每一根去作比較, 但我需要的卻是針對我要的特定時間的K線去作比較。不知道是否有辦法解決
下圖程式寫法:
KN:=Y;
{//設定僅算近期N根K棒(若為0則算全部)}
CC:=C;
OO:=o;
PL:=C*0;
StNo:=datacount-KN+1;
if StNo<1 or StNo>datacount then StNo:=1;
for i=StNo to datacount do begin
for j=i-1 downto i-K do begin
if j<1 then break;
if ABS(CC[i]-OO[j])<= E then begin
PL[i]:=i-j; break;
end;
end;
end;
DRAWSL(PL>0,CC,0,-PL,1) pxdn2 linedot;
引用:
最初由 ericpai 發表
感謝版主 大致上就是我所需要的
不過
似乎只能畫出線圖中最後一次"13:25收盤價"往前比較10個"13:25收盤價", 如果要線圖中所有歷史資料的"13:25收盤價"都能向前作相同的比較 不知道可行嗎?
抱歉 問題很多 辛苦您了
我想要的結果 可能會比較類似下圖
下圖的寫法是往前每一根去作比較, 但我需要的卻是針對我要的特定時間的K線去作比較。不知道是否有辦法解決
下圖程式寫法:
KN:=Y;
{//設定僅算近期N根K棒(若為0則算全部)}
CC:=C;
OO:=o;
PL:=C*0;
StNo:=datacount-KN+1;
if StNo<1 or StNo>datacount then StNo:=1;
for i=StNo to datacount do begin
for j=i-1 downto i-K do begin
if j<1 then break;
if ABS(CC[i]-OO[j])<= E then begin
PL[i]:=i-j; break;
end;
end;
end;
DRAWSL(PL>0,CC,0,-PL,1) pxdn2 linedot;

了解了
謝謝版主大大 萬分感激
引用:
最初由 ericpai 發表
了解了
謝謝版主大大 萬分感激
請問 變數一定要用 I 和 J 嗎? 換其他的英文字母 例如M 和 U 好像就不行了
請教~~~~~ 謝謝
引用:
最初由 ericpai 發表
請問 變數一定要用 I 和 J 嗎? 換其他的英文字母 例如M 和 U 好像就不行了
請教~~~~~ 謝謝
| 全部時間均為台灣時間, 現在時間為10:53 | 總頁數 (2): [1] 2 » 在這個頁面顯示本主題全部的 16 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.