到奇狐勝券首頁 奇狐社區論壇 購買奇狐勝券 試用奇狐勝券
 
論壇首頁 你可以在這裡編輯你的資料,查看短訊,訂閱主題和論壇參數等等 免費會員註冊 會員列表 論壇幫助 論壇日曆 論壇搜索 加入我的最愛 登出論壇  
奇狐社區論壇 : Powered by vBulletin version 2.3.0 奇狐社區論壇 > 指標公式 > 問題交流 > 問題請教
  上一主題   下一主題
作者
主題 發表新主題    回覆主題
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

問題請教

你好:想請教一下公式的寫法,我主要先用KD找出相對的高低點位之後再畫水平線,如右邊無股價則向右延伸,如有股價則畫虛線,我有加入判斷式但好像無法成立,請問要如何修改或有其他的寫法,謝謝。



//KD
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);

//高低點
zs:=BARSCOUNT(CLOSE);
HH:=HHV(HIGH,BARSLAST(K<D));
LL:=LLV(LOW,BARSLAST(K>D));
Y1:=FILTERX(HIGH=HH,BARSLAST(K<D));
Y2:=FILTERX(LOW=LL,BARSLAST(K>D));
T1:=BACKSET(BARSTATUS=2,BARSLAST(Y2)+1); U1:=T1>REF(T1,1);
T2:=BACKSET(U1,REF(BARSLAST(Y2),1)+2); U2:=T2>REF(T2,1);
T3:=BACKSET(U2,REF(BARSLAST(Y2),1)+2); U3:=T3>REF(T3,1);
R1:=BACKSET(BARSTATUS=2,BARSLAST(Y1)+1); S1:=R1>REF(R1,1);
R2:=BACKSET(S1,REF(BARSLAST(Y1),1)+2); S2:=R2>REF(R2,1);
R3:=BACKSET(S2,REF(BARSLAST(Y1),1)+2); S3:=R3>REF(R3,1);

//畫線
A1:=REF(HIGH,BARSLAST(S1));
PP:=0;
IF(ANY(CROSS(HIGH,A1),zs),PP=1,pp=2);
IF pp=2 then
DRAWLINE(s1,A1,CROSS(HIGH,A1),A1,0),ColorYellow,LINEDOT;
Else Begin
DRAWLINE(s1,A1,ISLASTBAR,A1,1),ColorRed;
DRAWNUMBER(ISLASTBAR,A1,A1,2),ColorRed;
End

A2:=REF(HIGH,BARSLAST(S2));
xx:=0;
IF(ANY(CROSS(HIGH,A2),zs),xx=1,xx=2);
IF xx=2 then
DRAWLINE(s2,A2,CROSS(HIGH,A2),A2,0),Colorblack,LINEDOT;
Else Begin
DRAWLINE(s2,A2,ISLASTBAR,A2,1),ColorRed;
DRAWNUMBER(ISLASTBAR,A2,A2,2),ColorRed;
End


A3:=REF(HIGH,BARSLAST(S3));
xx:=0;
IF(ANY(CROSS(HIGH,A3),zs),xx=1,xx=2);
IF xx=2 then
DRAWLINE(s3,A3,CROSS(HIGH,A3),A3,0),ColorYellow,LINEDOT;
Else Begin
DRAWLINE(s3,A3,ISLASTBAR,A3,1),ColorRed;
DRAWNUMBER(ISLASTBAR,A3,A3,2),ColorRed;
End

最後由 k5157 在 2019-10-21 14:55 編輯 向版主報告此篇 | 查IP位址
Old Post 2019-10-21 14:51
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

附上圖檔

k5157 附帶上了此圖片:

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 14:56
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18166

回覆: 問題請教

引用:
最初由 k5157 發表
你好:想請教一下公式的寫法,我主要先用KD找出相對的高低點位之後再畫水平線,如右邊無股價則向右延伸,如有股價則畫虛線,我有加入判斷式但好像無法成立,請問要如何修改或有其他的寫法,謝謝。



//KD
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);

//高低點
zs:=BARSCOUNT(CLOSE);
HH:=HHV(HIGH,BARSLAST(K<D));
LL:=LLV(LOW,BARSLAST(K>D));
Y1:=FILTERX(HIGH=HH,BARSLAST(K<D));
Y2:=FILTERX(LOW=LL,BARSLAST(K>D));
T1:=BACKSET(BARSTATUS=2,BARSLAST(Y2)+1); U1:=T1>REF(T1,1);
T2:=BACKSET(U1,REF(BARSLAST(Y2),1)+2); U2:=T2>REF(T2,1);
T3:=BACKSET(U2,REF(BARSLAST(Y2),1)+2); U3:=T3>REF(T3,1);
R1:=BACKSET(BARSTATUS=2,BARSLAST(Y1)+1); S1:=R1>REF(R1,1);
R2:=BACKSET(S1,REF(BARSLAST(Y1),1)+2); S2:=R2>REF(R2,1);
R3:=BACKSET(S2,REF(BARSLAST(Y1),1)+2); S3:=R3>REF(R3,1);

//畫線
A1:=REF(HIGH,BARSLAST(S1));
PP:=0;
IF(ANY(CROSS(HIGH,A1),zs),PP=1,pp=2);
IF pp=2 then
DRAWLINE(s1,A1,CROSS(HIGH,A1),A1,0),ColorYellow,LINEDOT;
Else Begin
DRAWLINE(s1,A1,ISLASTBAR,A1,1),ColorRed;
DRAWNUMBER(ISLASTBAR,A1,A1,2),ColorRed;
End

A2:=REF(HIGH,BARSLAST(S2));
xx:=0;
IF(ANY(CROSS(HIGH,A2),zs),xx=1,xx=2);
IF xx=2 then
DRAWLINE(s2,A2,CROSS(HIGH,A2),A2,0),Colorblack,LINEDOT;
Else Begin
DRAWLINE(s2,A2,ISLASTBAR,A2,1),ColorRed;
DRAWNUMBER(ISLASTBAR,A2,A2,2),ColorRed;
End


A3:=REF(HIGH,BARSLAST(S3));
xx:=0;
IF(ANY(CROSS(HIGH,A3),zs),xx=1,xx=2);
IF xx=2 then
DRAWLINE(s3,A3,CROSS(HIGH,A3),A3,0),ColorYellow,LINEDOT;
Else Begin
DRAWLINE(s3,A3,ISLASTBAR,A3,1),ColorRed;
DRAWNUMBER(ISLASTBAR,A3,A3,2),ColorRed;
End



原碼:
//KD RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); //高低點 HH:=H; LL:=L; UCK:=Cross(K,D); DCK:=Cross(D,K); UED:=refx(DCK,1) or islastbar; DED:=refx(UCK,1) or islastbar; HSP:=HHVBARS(H,BARSLAST(UCK)+1); LSP:=LLVBARS(L,BARSLAST(DCK)+1); HHP:=SETVAL(UED,0,-HSP,Barpos-HSP)=Barpos or barpos=0; //高點 LLP:=SETVAL(DED,0,-LSP,Barpos-LSP)=Barpos or barpos=0; //低點 //畫高點線 ZeroAry:=C*0; MaxN:=3; CountN:=0; DWHP:=ZeroAry; DWLN:=ZeroAry; for i=datacount downto 1 do begin if HHP[i]=1 then begin DWHP[i]:=1; DWLN[i]:=0; for j=i+1 to datacount do begin if HH[j]>=HH[i] and LL[j]<=HH[i] then begin DWLN[i]:=j-i; break; end; end; CountN:=CountN+1; if CountN=MaxN then break; end; end; DRAWSL(DWHP and DWLN=0,HH,0,DWLN,0) pxdn2 ColorFF00FF; DRAWSL(DWHP and DWLN>0,HH,0,DWLN,0) pxdn2 linedot ColorFF00FF; SP1:=sumbars(DWHP,1)-1; DRAWNUMBER(ref(DWLN,SP1)=0 and islastbar,ref(HH,SP1),ref(HH,SP1),2) shift1 ColorFF00FF; SP2:=sumbars(DWHP,2)-1; DRAWNUMBER(ref(DWLN,SP2)=0 and islastbar,ref(HH,SP2),ref(HH,SP2),2) shift1 ColorFF00FF; SP3:=sumbars(DWHP,3)-1; DRAWNUMBER(ref(DWLN,SP3)=0 and islastbar,ref(HH,SP3),ref(HH,SP3),2) shift1 ColorFF00FF;

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 16:19
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

感謝版主!!太感謝了!!

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 17:03
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

請問版主,是否可以把低點也加入這樣就完美了。真的很感謝!!

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 17:09
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18166

引用:
最初由 k5157 發表
請問版主,是否可以把低點也加入這樣就完美了。真的很感謝!!


原碼:
//KD RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); //高低點 HH:=H; LL:=L; UCK:=Cross(K,D); DCK:=Cross(D,K); UED:=refx(DCK,1) or islastbar; DED:=refx(UCK,1) or islastbar; HSP:=HHVBARS(H,BARSLAST(UCK)+1); LSP:=LLVBARS(L,BARSLAST(DCK)+1); HHP:=SETVAL(UED,0,-HSP,Barpos-HSP)=Barpos or barpos=0; //高點 LLP:=SETVAL(DED,0,-LSP,Barpos-LSP)=Barpos or barpos=0; //低點 //畫線 ZeroAry:=C*0; MaxN:=3; CountH:=0; CountL:=0; DWHP:=ZeroAry; DWLP:=ZeroAry; DWLN:=ZeroAry; for i=datacount downto 1 do begin if HHP[i]=1 then begin DWHP[i]:=1; DWLN[i]:=0; for j=i+1 to datacount do begin if HH[j]>=HH[i] and LL[j]<=HH[i] then begin DWLN[i]:=j-i; break; end; end; CountH:=CountH+1; if CountH=MaxN then break; end; end; DRAWSL(DWHP and DWLN=0,HH,0,DWLN,0) pxdn2 ColorFF00FF; DRAWSL(DWHP and DWLN>0,HH,0,DWLN,0) pxdn2 linedot ColorFF00FF; SP1:=sumbars(DWHP,1)-1; DRAWNUMBER(ref(DWLN,SP1)=0 and islastbar,ref(HH,SP1),ref(HH,SP1),2) shift1 ColorFF00FF; SP2:=sumbars(DWHP,2)-1; DRAWNUMBER(ref(DWLN,SP2)=0 and islastbar,ref(HH,SP2),ref(HH,SP2),2) shift1 ColorFF00FF; SP3:=sumbars(DWHP,3)-1; DRAWNUMBER(ref(DWLN,SP3)=0 and islastbar,ref(HH,SP3),ref(HH,SP3),2) shift1 ColorFF00FF; for i=datacount downto 1 do begin if LLP[i]=1 then begin DWLP[i]:=1; DWLN[i]:=0; for j=i+1 to datacount do begin if LL[j]>=LL[i] and LL[j]<=LL[i] then begin DWLN[i]:=j-i; break; end; end; CountL:=CountL+1; if CountL=MaxN then break; end; end; DRAWSL(DWLP and DWLN=0,LL,0,DWLN,0) pxdn2 Color00FF00; DRAWSL(DWLP and DWLN>0,LL,0,DWLN,0) pxdn2 linedot Color00FF00; SP1:=sumbars(DWLP,1)-1; DRAWNUMBER(ref(DWLN,SP1)=0 and islastbar,ref(LL,SP1),ref(LL,SP1),2) shift1 Color00FF00; SP2:=sumbars(DWLP,2)-1; DRAWNUMBER(ref(DWLN,SP2)=0 and islastbar,ref(LL,SP2),ref(LL,SP2),2) shift1 Color00FF00; SP3:=sumbars(DWLP,3)-1; DRAWNUMBER(ref(DWLN,SP3)=0 and islastbar,ref(LL,SP3),ref(LL,SP3),2) shift1 Color00FF00;

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 17:48
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

使用奇狐軟體是非常幸運的是,再次感謝版主!!
感謝你的幫忙!!

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 18:47
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

版主不好意思,低點的顯示有點問題,前低被碰到應該變虛線才對,可是目前是全部的低點都出現,很抱歉這麼麻煩你,謝謝!!

向版主報告此篇 | 查IP位址
Old Post 2019-10-21 19:04
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18166

引用:
最初由 k5157 發表
版主不好意思,低點的顯示有點問題,前低被碰到應該變虛線才對,可是目前是全部的低點都出現,很抱歉這麼麻煩你,謝謝!!


Sorry! 重新答覆

請將
if LL[j]>=LL[i] and LL[j]<=LL[i] then begin
改為
if HH[j]>=LL[i] and LL[j]<=LL[i] then begin

向版主報告此篇 | 查IP位址
Old Post 2019-10-22 01:18
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
k5157
初級會員

註冊日期: Nov 2012
來  自:
文章數量: 17

終於完整了,非常感謝版主!!!

向版主報告此篇 | 查IP位址
Old Post 2019-10-22 08:56
k5157 現在離線 點選這裡查看 k5157 的個人資料 點選這裡給 k5157 傳送一條短訊 查找更多關於 k5157 的文章 增加 k5157 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18166

引用:
最初由 k5157 發表
終於完整了,非常感謝版主!!!


不客氣 ^^

向版主報告此篇 | 查IP位址
Old Post 2019-10-22 09:27
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
全部時間均為台灣時間, 現在時間為18:40 發表新主題    回覆主題
  上一主題   下一主題
顯示可列印版本 | 訂閱此主題

論壇跳轉:
主題評分:

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
HTML語法禁止
vB 語法核准
表情符號核准
貼圖語法[IMG]核准
 

本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。

Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.  聯絡我們