奇狐社區論壇
在這個頁面顯示本主題全部的 10 個文章

奇狐社區論壇 (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=13166)


由 jeff_6880 在 2010-03-04 15:06 發表:

[求救] 請教如何改連續為當日

Y:=((HIGH + LOW) / 2);
RED:=SMA(Y,8,1);
R2:=REF(RED,5);
KU1:=IF((HIGH = HHV(HIGH,3)),1,0);
KD1:=IF((LOW = LLV(LOW,3)),1,0);
UL:=IF((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 = 0)),REF(HIGH,2),REF(HIGH,(2 + BARSLAST((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 = 0))))));
上碎型:IF((HIGH >= R2),UL,REF(UL,BARSLAST((HIGH > R2)))),POINTDOT,colorFF00FF;
DL:=IF((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 = 0)),REF(LOW,2),REF(LOW,(2 + BARSLAST((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 = 0))))));
下碎型:IF((LOW <= R2),DL,REF(DL,BARSLAST((LOW <= R2)))),POINTDOT,colorFFFF;
DRAWICON(((HIGH > 上碎型) AND (REF(HIGH,1) < REF(上碎型,1))),(LOW * 0.995),4);
DRAWICON(((LOW < 下碎型) AND (REF(LOW,1) > REF(下碎型,1))),(HIGH * 1.005),5);

--------------------------------------------------------------------------------------------------

1.請教如何讓上述指標(上.下碎型)
只從當天第一根k棒起算
2.買賣箭頭只顯示第一個(而不是連續的買或賣)
而最後13:29顯示"平倉'

謝謝指點 !!


由 cgjj 在 2010-03-04 23:49 發表:

回覆: [求救] 請教如何改連續為當日

引用:
最初由 jeff_6880 發表
Y:=((HIGH + LOW) / 2);
RED:=SMA(Y,8,1);
R2:=REF(RED,5);
KU1:=IF((HIGH = HHV(HIGH,3)),1,0);
KD1:=IF((LOW = LLV(LOW,3)),1,0);
UL:=IF((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 = 0)),REF(HIGH,2),REF(HIGH,(2 + BARSLAST((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 = 0))))));
上碎型:IF((HIGH >= R2),UL,REF(UL,BARSLAST((HIGH > R2)))),POINTDOT,colorFF00FF;
DL:=IF((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 = 0)),REF(LOW,2),REF(LOW,(2 + BARSLAST((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 = 0))))));
下碎型:IF((LOW <= R2),DL,REF(DL,BARSLAST((LOW <= R2)))),POINTDOT,colorFFFF;
DRAWICON(((HIGH > 上碎型) AND (REF(HIGH,1) < REF(上碎型,1))),(LOW * 0.995),4);
DRAWICON(((LOW < 下碎型) AND (REF(LOW,1) > REF(下碎型,1))),(HIGH * 1.005),5);

--------------------------------------------------------------------------------------------------

1.請教如何讓上述指標(上.下碎型)
只從當天第一根k棒起算
2.買賣箭頭只顯示第一個(而不是連續的買或賣)
而最後13:29顯示"平倉'

謝謝指點 !!



ck:=date;
ck:=barslast(ck=ck[datacount])>=0;
HH:=H*ck; LL:=L*ck;

Y:=((HH + LL) / 2);
RED:=SMA(Y,8,1);
R2:=REF(RED,5);
KU1:=IF((HH = HHV(HH,3)),1,0);
KD1:=IF((LL = LLV(LL,3)),1,0);
UL:=IF((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 = 0)),REF(HH,2),REF(HH,(2 + BARSLAST((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 = 0))))));
上碎型:IF((HH >= R2),UL,REF(UL,BARSLAST((HH > R2)))),POINTDOT,colorFF00FF;
DL:=IF((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 = 0)),REF(LL,2),REF(LL,(2 + BARSLAST((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 = 0))))));
下碎型:IF((LL <= R2),DL,REF(DL,BARSLAST((LL <= R2)))),POINTDOT,colorFFFF;

BB:=((HH > 上碎型) AND (REF(HH,1) < REF(上碎型,1)));
SS:=((LL < 下碎型) AND (REF(LL,1) > REF(下碎型,1)));
CK:=BB-SS;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK<>ref(CK,1) or barpos=lbound(CK),CK,0);
BB:=CK=1;
SS:=CK=-1;
DRAWICON(BB,(LL * 0.995),4);
DRAWICON(SS,(HH * 1.005),5);


由 jeff_6880 在 2010-03-05 14:30 發表:

總版主..對不起~
是我語意不清.....

應該是"每一天"都顯示
也就是說計算值是每一天第一根K棒起算

這項指標是運用在期指一分鐘看盤
所以買賣箭頭最後只有落在13:29之前
13:30後就不再顯示

再次謝謝您的指導!!!


由 cgjj 在 2010-03-08 15:17 發表:

引用:
最初由 jeff_6880 發表
總版主..對不起~
是我語意不清.....

應該是"每一天"都顯示
也就是說計算值是每一天第一根K棒起算

這項指標是運用在期指一分鐘看盤
所以買賣箭頭最後只有落在13:29之前
13:30後就不再顯示

再次謝謝您的指導!!!


原碼:

CK
:=DATE<>REF(DATE,1);
StNo:=lbound(BARSSINCE(CK));
TE:=TIMEOutTE:=133000;
HH:=HLL:=LZeroAry:=C*0;
BB:=ZeroArySS:=ZeroAry
上碎型:ZeroAry colorFF00FF linethick0;
下碎型:ZeroAry color00FFFF linethick0;
for 
i=StNo to datacount do begin
  
if CK[i]=1 then begin
    x
:=setlbound(HH,i); x:=setlbound(LL,i);
    
Y:=((HH LL) / 2);
    
RED:=SMA(Y,8,1);
    
R2:=REF(RED,5);
    
KU1:=IF((HH HHV(HH,3)),1,0);
    
KD1:=IF((LL LLV(LL,3)),1,0);
    
UL:=IF((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 0)),REF(HH,2),REF(HH,(BARSLAST((((REF(KU1,2) = 1) AND (REF(KU1,1) = 0)) AND (KU1 0))))));
    
上碎型S:=IF((HH >= R2),UL,REF(UL,BARSLAST((HH R2))));
    
DL:=IF((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 0)),REF(LL,2),REF(LL,(BARSLAST((((REF(KD1,2) = 1) AND (REF(KD1,1) = 0)) AND (KD1 0))))));
    
下碎型S:=IF((LL <= R2),DL,REF(DL,BARSLAST((LL <= R2))));
    
DBB:=((HH 上碎型S) AND (REF(HH,1) < REF(上碎型S,1)));
    
DSS:=((LL 下碎型S) AND (REF(LL,1) > REF(下碎型S,1)));
  
end;
  if 
i>=lbound(DBBthen BB[i]:=DBB[i] and TE[i]<OutTE;
  if 
i>=lbound(DSSthen SS[i]:=DSS[i] or TE[i]>=OutTE
  if 
i>=lbound(上碎型Sthen 上碎型[i]:=上碎型S[i];
  if 
i>=lbound(下碎型Sthen 下碎型[i]:=下碎型S[i];
end;
PARTLINE(sum(上碎型>0,2)=,上碎型),linedot,colorFF00FF;
PARTLINE(sum(下碎型>0,2)=2,下碎型),linedot,color00FFFF;
CK:=BB-SS;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK<>ref(CK,1) or barpos=lbound(CK),CK,0);
BB:=CK=1;
SS:=CK=-1;
DRAWICON(BB,(0.995),4);
DRAWICON(SS,(1.005),5);


由 jeff_6880 在 2010-03-09 15:25 發表:

非常感謝總版主的熱心指導


由 jeff_6880 在 2010-03-23 23:18 發表:



請教總版主該如何處理
謝謝


由 cgjj 在 2010-03-24 12:49 發表:

引用:
最初由 jeff_6880 發表


請教總版主該如何處理
謝謝



那根啟動位置並沒有錯唷
您副圖的 "上下碎型" 指標, 並非是只從當天第一根k棒起算
計算起點不同, 結果當然就不一樣囉

另外那根訊號不見是正常的
因為給您的範例是做單邊的範例

把這段過濾動作刪除, 即可見到
CK:=BB-SS;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK<>ref(CK,1) or barpos=lbound(CK),CK,0);
BB:=CK=1;
SS:=CK=-1;


由 jeff_6880 在 2010-03-24 22:22 發表:



這樣實在看不懂??
單邊改為雙邊.不是晚輩能力所及
還請總版主協助處理~謝謝!!


由 cgjj 在 2010-03-25 13:19 發表:

引用:
最初由 jeff_6880 發表


這樣實在看不懂??
單邊改為雙邊.不是晚輩能力所及
還請總版主協助處理~謝謝!!




CK:=BB-SS;
CK:=ref(CK,barslast(CK<>0));
CK:=if(CK<>ref(CK,1) or barpos=lbound(CK),CK,0);
BB:=CK=1;
SS:=CK=-1;

改為
CK:=BB-SS;
SP1:=barslast(DATE<>REF(DATE,1) or barpos=1);
SP2:=barslast(CK<>0);
FSP:=if(SP2<SP1,SP2,SP1);
CK:=ref(CK,FSP);
CK:=if(CK<>ref(CK,1) or SP1=0 or barpos=lbound(CK),CK,0);
BB:=CK=1;
SS:=CK=-1;


由 jeff_6880 在 2010-03-25 22:05 發表:



謝謝總版主熱心指導
感恩~


全部時間均為台灣時間, 現在時間為09:55
在這個頁面顯示本主題全部的 10 個文章


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

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.