 |
expexp
中級會員
註冊日期: Sep 2004
來 自:
文章數量: 78 |
[五彩K線] 求助
我想寫一個五彩K線公式:
1. 當收盤價創十天最高之收盤價,畫紅色
2. 當收盤價創十天最低之收盤價,畫藍色
3. 當筆收盤價沒有創十天最高之收盤價,
或是當筆收盤價沒有創十天最低之收盤價,則延續前面的顏色。
條件1與條件2我會寫,但是條件3就難倒我了。
懇請協助,感謝~~
|
|
向版主報告此篇 |  |
|
2010-06-18 12:25 |
|
|
|  |
 |
KV1566
中級會員
註冊日期: Jun 2009
來 自:
文章數量: 95 |
回覆: [五彩K線] 求助
引用: 最初由 expexp 發表
我想寫一個五彩K線公式:
1. 當收盤價創十天最高之收盤價,畫紅色
2. 當收盤價創十天最低之收盤價,畫藍色
3. 當筆收盤價沒有創十天最高之收盤價,
或是當筆收盤價沒有創十天最低之收盤價,則延續前面的顏色。
條件1與條件2我會寫,但是條件3就難倒我了。
懇請協助,感謝~~
同門師兄弟!你先這樣擋著用吧,再看版主大大有沒有更快的方式取代!
原碼: CC:=C; OO:=O; HH:=H; LL:=L;
ck1:=CC=hhv(CC,10);
ck2:=CC=llv(CC,10);
ck:=c*0;
if ck2[1]=1 then tmpCK:=ck2[1] else tmpCK:=ck1[1];
for i=1 to datacount do begin
if ck1[i]=1 then begin
ck[i]:=1;
tmpCK:=1;
end else if ck2[i]=1 then begin
ck[i]:=0;
tmpCK:=0;
end else begin
ck[i]:=tmpCK;
end;
end;
stickline(ck=1,OO,CC,8,0) colorRed;
stickline(ck=1,HH,LL,0,0) colorRed;
stickline(ck=0,OO,CC,8,0) colorBlue;
stickline(ck=0,HH,LL,0,0) colorBlue;
|
|
向版主報告此篇 |  |
|
2010-06-18 21:28 |
|
|
|  |
 |
cgjj
總版主

註冊日期: Oct 2003
來 自:
文章數量: 18094 |
回覆: [五彩K線] 求助
引用: 最初由 expexp 發表
我想寫一個五彩K線公式:
1. 當收盤價創十天最高之收盤價,畫紅色
2. 當收盤價創十天最低之收盤價,畫藍色
3. 當筆收盤價沒有創十天最高之收盤價,
或是當筆收盤價沒有創十天最低之收盤價,則延續前面的顏色。
條件1與條件2我會寫,但是條件3就難倒我了。
懇請協助,感謝~~
CK:=(C>ref(HHV(C,10),1))-(C<ref(LLV(C,10),1));
CK:=ref(CK,barslast(CK<>0));
stickline(ck=1,O,C,8,0) colorRed;
stickline(ck=1,H,L,0,0) colorRed;
stickline(ck=-1,O,C,8,0) colorBlue;
stickline(ck=-1,H,L,0,0) colorBlue;
|
|
向版主報告此篇 |  |
|
2010-06-19 00:44 |
|
|
|  |
 |
KV1566
中級會員
註冊日期: Jun 2009
來 自:
文章數量: 95 |
回覆: 回覆: [五彩K線] 求助
引用: 最初由 cgjj 發表
CK:=(C>ref(HHV(C,10),1))-(C<ref(LLV(C,10),1));
CK:=ref(CK,barslast(CK<>0));
感謝總版主,這個做法簡單多了,真是高明!
不過,CK:=(C>ref(HHV(C,10),1))-(C<ref(LLV(C,10),1));
與CK:=(C=HHV(C,10))-(C=LLV(C,10));
間,好像會有一點點差異?!
|
|
向版主報告此篇 |  |
|
2010-06-19 01:21 |
|
|
|  |
 |
KV1566
中級會員
註冊日期: Jun 2009
來 自:
文章數量: 95 |
總版主的方式,似乎是要避掉等高或等低!
可是,我查了一下,C>ref(HHV(C,10),1),似乎並不是只有消除等高問題,有時反而變成創11日收盤新高,而不是創10日收盤新高了!
這種情況(創11日收盤新高),是因為前一天的10日收盤新高剛好是最開始的那一天,而不是以當天算起的10天內的。因為是當天往前算起第11天,所以反而變成創11日收盤新高了!
似乎,將程式中的10,改成9,這個問題就解決了!(不確定)
例子:
大盤,若用10,則2008/3/24才轉紅K。而若用9,則2008/3/21便轉紅K了!
而實際上,確實2008/3/21便已創10日收盤新高,而並不是3/24才創10日收盤新高!
另外,這個程式後半段的K線顯示,或許,改成下面這樣會比較好些,以顏色辨趨勢,以空心實心保留原本的紅黑!
原碼: stickline(ck=1 and C>=O,O,C,6,1) colorRed;
stickline(ck=1 and C<O,O,C,6,0) colorRed;
stickline(ck=1,H,max(C,O),0,0) colorRed;
stickline(ck=1,min(C,O),L,0,0) colorRed;
stickline(ck=-1 and C>=O,O,C,6,1) colorBlue;
stickline(ck=-1 and C<O,O,C,6,0) colorBlue;
stickline(ck=-1,H,max(C,O),0,0) colorBlue;
stickline(ck=-1,min(C,O),L,0,0) colorBlue;
|
最後由 KV1566 在 2010-06-19 10:16 編輯 |
向版主報告此篇 |  |
|
2010-06-19 09:57 |
|
|
|  |
本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。
|
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved. 聯絡我們
|