![]() |
在這個頁面顯示本主題全部的 7 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 求助 最後ˊ60分時 創新高或創新低 一分kl產生ˊ60分創新高後 產生第一項下缺口 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=24138)
求助 最後ˊ60分時 創新高或創新低 一分kl產生ˊ60分創新高後 產生第一項下缺口
版主你好
求助修改下列程式
邏輯是 在最後60分鐘中
條件1: 1分k創60分新高
條件2: 有向下缺口產生
反之
條件1: 1分k創ˊ60分新低
條件2: 有向上缺口產生
條件1 我會寫 但是條件二 我不會 所以求助版主 謝謝
//==========================================================================
//=============================== 缺口 =================================
HH:=HIGH; LL:=LOW; UH:=MAX(OPEN,CLOSE); UL:=MIN(OPEN,CLOSE);
ZA:=CLOSE*0;
UT1:=ZA; UT2:=ZA; UP1:=ZA; UP2:=ZA; UD1:=ZA; UD2:=ZA;
DT1:=ZA; DT2:=ZA; DP1:=ZA; DP2:=ZA; DD1:=ZA; DD2:=ZA;
for i=DATACOUNT downto 2 do begin
IF UL[i]>UH[i-1] then begin //跳上
IF LL[i]<HH[i-1] then begin
UT1[i]:=1; UT2[i-1]:=1; UP1[i]:=UL[i]; UP2[i-1]:=UH[i-1];
end else begin
UT1[i]:=2; UT2[i-1]:=2; UP1[i]:=LL[i]; UP2[i-1]:=HH[i-1];
end;
for j=i+1 to DATACOUNT do IF LL[j]<UP1[i] then break;
j:=j-(j>DATACOUNT); UD1[i]:=j-i;
for j=i to DATACOUNT do IF LL[j]<UP2[i-1] then break;
j:=j-(j>DATACOUNT); UD2[i-1]:=j-i+1;
end else IF UH[i]<UL[i-1] then begin //跳下
IF HH[i]>LL[i-1] then begin
DT1[i]:=1; DT2[i-1]:=1; DP1[i]:=UH[i]; DP2[i-1]:=UL[i-1];
end else begin
DT1[i]:=2; DT2[i-1]:=2; DP1[i]:=HH[i]; DP2[i-1]:=LL[i-1];
end;
for j=i+1 to DATACOUNT do IF HH[j]>DP1[i] then break;
j:=j-(j>DATACOUNT); DD1[i]:=j-i;
for j=i to DATACOUNT do IF HH[j]>DP2[i-1] then break;
j:=j-(j>DATACOUNT); DD2[i-1]:=j-i+1;
end;
end;
DRAWSL(UT2=1 and UD2>0,UP2,0,UD2,0) color66FF pxdn0 LINETHICK2 LINEDASH;//=============== 向上缺口低==
DRAWSL(UT2=2 and UD2>0,UP2,0,UD2,0) color66FF pxdn0 LINETHICK2 LINEDASH;
DRAWSL(DT2=1 and DD2>0,DP2,0,DD2,0) colorFFFF pxdn0 LINETHICK2 LINEDASH;//=============== 向下缺口高==
DRAWSL(DT2=2 and DD2>0,DP2,0,DD2,0) colOrFFFF pxdn0 LINETHICK2 LINEDASH;
DRAWICON(UT2=1 AND UD2>0,MAX(C,O)-3,'$BA_BS_5B.gif') pxdn10;//紅 多
DRAWICON(UT2=2 AND UD2>0,MAX(C,O)-3,'$BA_BS_5B.gif') pxdn10;//紅 多
DRAWICON(DT2=1 and DD2>0,MIN(C,O)+3,'$BA_BS_5S.gif') pxUP90;//綠 空
DRAWICON(DT2=2 and DD2>0,MIN(C,O)+3,'$BA_BS_5S.gif') pxUP90;//綠 空
DRAWSL(UT1=1 and UD1>0,UP1,0,UD1,0) coloR66FF pxdn0 LINETHICK1 LINEDASH;
DRAWSL(UT1=2 and UD1>0,UP1,0,UD1,0) color66FF pxdn0 LINETHICK1 LINEDASH;
DRAWSL(DT1=1 and DD1>0,DP1,0,DD1,0) colORFFFF pxdn0 LINETHICK1 LINEDASH;
DRAWSL(DT1=2 and DD1>0,DP1,0,DD1,0) colorFFFF pxdn0 LINETHICK1 LINEDASH;
//======================================================================
//=========================================================================================================================================
//=============================M60 創新高低後 缺口 見高與落底k判讀==========================================================================
// =================================================================
//DRAWICON(THAA,HIGH+10,'$SO_BS_2S.gif') pxup450;
//SP1:=BARSLAST(條件1);
//條件2:=CLOSE>REF(HIGH,SP1);
//條件2:=條件2 and SUM(條件2,SP1+1)=1;
//========================================================================
//MA20:MA(CLOSE,20), linethick0 colorFF3FF; // 小藍 MA20
//MA20DOWN:=MA20<REF(MA20,1);
//PARTLINE(MA20,MA20) colorFF33FF,linethick3;
//PARTLINE(MA20DOWN,MA20) colorFFFF00,linethick3;
//DRAWSL(ISLASTBAR ,MA20,0,0,3) pxdn0 coloRFFF00 LINETHICK1 LINEDOT;
//DRAWNUMBER(ISLASTBAR,MA20,MA20,PN) SHIFT3,colorFFFF00 PXUP60;
//DRAWTEXT(ISLASTBAR,MA20,'MA20') SHIFT1,colorFFFF00 PXUP60;
//==========================================================================================
IF DATATYPE <4 THEN BEGIN
//==============第一=================================================================
MH60X:= HIGH = MH60 LINETHICK0 COLORFFFFFF;
//STICKLINE(MH60X,LOW,LOW,8,0),COLOR00FF00 LINETHICK5 LINEDOT ;
//DRAWICON(MH60x ,(CLOSE+OPEN)/2,'$SO_N1_S1.gif') PXUP20 ALIGN20;//1 綠
//DRAWNUMBER(MH60A,H,HH3,PPN) ALIGN0 ,colorFF PXUP60;//========
//DRAWNUMBER(MH60A,L,LL3,PPN) ALIGN0 ,colorFF00 PXDN60;//========
//DRAWTEXT(MH60A,HIGH+1,'M60創新高') ALIGN0,coloRFF00 PXUP127;
ML60X:= LOW = ML60 LINETHICK0 COLORFFFFFF;
//STICKLINE(ML60X,HIGH,HIGH,8,0),COLOR00BBFF LINETHICK5 LINEDOT ;
//DRAWICON(ML60x,(CLOSE+OPEN)/2,'$SO_N1_B1.gif') PXDN20 ALIGN0;//1 紅
//DRAWNUMBER(ML60A,H,HH3,PPN) ALIGN0 colorFF PXUp60;//======
//DRAWNUMBER(ML60A,L,LL3,PPN) ALIGN0 colorFF00 PXDN60;//======
//DRAWTEXT(ML60A,LOW-1,'M60創新低') ALIGN0,coloR00FF00 PXDN127 SHIFT;
//==================================================================================
//===============第二===========================================================
// ==================================================================
//DRAWICON(THAA,HIGH+10,'$SO_BS_2S.gif') pxup450;
//SP1:=BARSLAST(條件1);
//條件2:=CLOSE>REF(HIGH,SP1);
//條件2:=條件2 and SUM(條件2,SP1+1)=1;
//========================================================================
SP1X:=BARSLAST(MH60X);
條件2X := CLOS< REF(LOW,SP1X);
條件2X:=條件2X and SUM(條件2X,SP1X+1)=1;
//DRAWICON(條件2X,(C+O)/2,'$SO_N1_S2.gif') pxDN20 ALIGN0;//2 綠
SP2X:=BARSLAST(ML60X);
條件3X := CLOSE> REF(HIGH,SP2X);
條件3X:=條件3X and SUM(條件3X,SP2X+1)=1;
//DRAWICON(條件3X,(CLOSE+OPEN)/2,'$SO_N1_B2.gif') pxDN0 ALIGN0;//2 紅
//================================================================================
回覆: 求助 最後ˊ60分時 創新高或創新低 一分kl產生ˊ60分創新高後 產生第一項下缺口
引用:
最初由 ivancclai 發表
版主你好
求助修改下列程式
邏輯是 在最後60分鐘中
條件1: 1分k創60分新高
條件2: 有向下缺口產生
反之
條件1: 1分k創ˊ60分新低
條件2: 有向上缺口產生
條件1 我會寫 但是條件二 我不會 所以求助版主 謝謝
//==========================================================================
//=============================== 缺口 =================================
HH:=HIGH; LL:=LOW; UH:=MAX(OPEN,CLOSE); UL:=MIN(OPEN,CLOSE);
ZA:=CLOSE*0;
UT1:=ZA; UT2:=ZA; UP1:=ZA; UP2:=ZA; UD1:=ZA; UD2:=ZA;
DT1:=ZA; DT2:=ZA; DP1:=ZA; DP2:=ZA; DD1:=ZA; DD2:=ZA;
for i=DATACOUNT downto 2 do begin
IF UL[i]>UH[i-1] then begin //跳上
IF LL[i]<HH[i-1] then begin
UT1[i]:=1; UT2[i-1]:=1; UP1[i]:=UL[i]; UP2[i-1]:=UH[i-1];
end else begin
UT1[i]:=2; UT2[i-1]:=2; UP1[i]:=LL[i]; UP2[i-1]:=HH[i-1];
end;
for j=i+1 to DATACOUNT do IF LL[j]<UP1[i] then break;
j:=j-(j>DATACOUNT); UD1[i]:=j-i;
for j=i to DATACOUNT do IF LL[j]<UP2[i-1] then break;
j:=j-(j>DATACOUNT); UD2[i-1]:=j-i+1;
end else IF UH[i]<UL[i-1] then begin //跳下
IF HH[i]>LL[i-1] then begin
DT1[i]:=1; DT2[i-1]:=1; DP1[i]:=UH[i]; DP2[i-1]:=UL[i-1];
end else begin
DT1[i]:=2; DT2[i-1]:=2; DP1[i]:=HH[i]; DP2[i-1]:=LL[i-1];
end;
for j=i+1 to DATACOUNT do IF HH[j]>DP1[i] then break;
j:=j-(j>DATACOUNT); DD1[i]:=j-i;
for j=i to DATACOUNT do IF HH[j]>DP2[i-1] then break;
j:=j-(j>DATACOUNT); DD2[i-1]:=j-i+1;
end;
end;
DRAWSL(UT2=1 and UD2>0,UP2,0,UD2,0) color66FF pxdn0 LINETHICK2 LINEDASH;//=============== 向上缺口低==
DRAWSL(UT2=2 and UD2>0,UP2,0,UD2,0) color66FF pxdn0 LINETHICK2 LINEDASH;
DRAWSL(DT2=1 and DD2>0,DP2,0,DD2,0) colorFFFF pxdn0 LINETHICK2 LINEDASH;//=============== 向下缺口高==
DRAWSL(DT2=2 and DD2>0,DP2,0,DD2,0) colOrFFFF pxdn0 LINETHICK2 LINEDASH;
DRAWICON(UT2=1 AND UD2>0,MAX(C,O)-3,'$BA_BS_5B.gif') pxdn10;//紅 多
DRAWICON(UT2=2 AND UD2>0,MAX(C,O)-3,'$BA_BS_5B.gif') pxdn10;//紅 多
DRAWICON(DT2=1 and DD2>0,MIN(C,O)+3,'$BA_BS_5S.gif') pxUP90;//綠 空
DRAWICON(DT2=2 and DD2>0,MIN(C,O)+3,'$BA_BS_5S.gif') pxUP90;//綠 空
DRAWSL(UT1=1 and UD1>0,UP1,0,UD1,0) coloR66FF pxdn0 LINETHICK1 LINEDASH;
DRAWSL(UT1=2 and UD1>0,UP1,0,UD1,0) color66FF pxdn0 LINETHICK1 LINEDASH;
DRAWSL(DT1=1 and DD1>0,DP1,0,DD1,0) colORFFFF pxdn0 LINETHICK1 LINEDASH;
DRAWSL(DT1=2 and DD1>0,DP1,0,DD1,0) colorFFFF pxdn0 LINETHICK1 LINEDASH;
//======================================================================
//=========================================================================================================================================
//=============================M60 創新高低後 缺口 見高與落底k判讀==========================================================================
// =================================================================
//DRAWICON(THAA,HIGH+10,'$SO_BS_2S.gif') pxup450;
//SP1:=BARSLAST(條件1);
//條件2:=CLOSE>REF(HIGH,SP1);
//條件2:=條件2 and SUM(條件2,SP1+1)=1;
//========================================================================
//MA20:MA(CLOSE,20), linethick0 colorFF3FF; // 小藍 MA20
//MA20DOWN:=MA20<REF(MA20,1);
//PARTLINE(MA20,MA20) colorFF33FF,linethick3;
//PARTLINE(MA20DOWN,MA20) colorFFFF00,linethick3;
//DRAWSL(ISLASTBAR ,MA20,0,0,3) pxdn0 coloRFFF00 LINETHICK1 LINEDOT;
//DRAWNUMBER(ISLASTBAR,MA20,MA20,PN) SHIFT3,colorFFFF00 PXUP60;
//DRAWTEXT(ISLASTBAR,MA20,'MA20') SHIFT1,colorFFFF00 PXUP60;
//==========================================================================================
IF DATATYPE <4 THEN BEGIN
//==============第一=================================================================
MH60X:= HIGH = MH60 LINETHICK0 COLORFFFFFF;
//STICKLINE(MH60X,LOW,LOW,8,0),COLOR00FF00 LINETHICK5 LINEDOT ;
//DRAWICON(MH60x ,(CLOSE+OPEN)/2,'$SO_N1_S1.gif') PXUP20 ALIGN20;//1 綠
//DRAWNUMBER(MH60A,H,HH3,PPN) ALIGN0 ,colorFF PXUP60;//========
//DRAWNUMBER(MH60A,L,LL3,PPN) ALIGN0 ,colorFF00 PXDN60;//========
//DRAWTEXT(MH60A,HIGH+1,'M60創新高') ALIGN0,coloRFF00 PXUP127;
ML60X:= LOW = ML60 LINETHICK0 COLORFFFFFF;
//STICKLINE(ML60X,HIGH,HIGH,8,0),COLOR00BBFF LINETHICK5 LINEDOT ;
//DRAWICON(ML60x,(CLOSE+OPEN)/2,'$SO_N1_B1.gif') PXDN20 ALIGN0;//1 紅
//DRAWNUMBER(ML60A,H,HH3,PPN) ALIGN0 colorFF PXUp60;//======
//DRAWNUMBER(ML60A,L,LL3,PPN) ALIGN0 colorFF00 PXDN60;//======
//DRAWTEXT(ML60A,LOW-1,'M60創新低') ALIGN0,coloR00FF00 PXDN127 SHIFT;
//==================================================================================
//===============第二===========================================================
// ==================================================================
//DRAWICON(THAA,HIGH+10,'$SO_BS_2S.gif') pxup450;
//SP1:=BARSLAST(條件1);
//條件2:=CLOSE>REF(HIGH,SP1);
//條件2:=條件2 and SUM(條件2,SP1+1)=1;
//========================================================================
SP1X:=BARSLAST(MH60X);
條件2X := CLOS< REF(LOW,SP1X);
條件2X:=條件2X and SUM(條件2X,SP1X+1)=1;
//DRAWICON(條件2X,(C+O)/2,'$SO_N1_S2.gif') pxDN20 ALIGN0;//2 綠
SP2X:=BARSLAST(ML60X);
條件3X := CLOSE> REF(HIGH,SP2X);
條件3X:=條件3X and SUM(條件3X,SP2X+1)=1;
//DRAWICON(條件3X,(CLOSE+OPEN)/2,'$SO_N1_B2.gif') pxDN0 ALIGN0;//2 紅
//================================================================================
版主你好
這是我目前的圖
綠1 創最後 ˊ60 分高在1分K 上標示 因為 ˊ60 分k
是紅k 所 以綠1 會一直改變
綠2 是 綠1 那一根K棒低跌破
綠3 是綠2 之後跌破 MA20
紅1是 創最後ˊ60 分低在一分K上標示
紅2 : 被紅3 覆蓋住 紅1 一根K棒高被收破
紅3 : 站上20MA
在第8根k棒有往上跳高缺口 我目前標示橘線我想第一個缺口標示出來 方便看圖(因為畫線在剛開始看不清楚 想符號標示
黃色線是向下跳空缺口 圖例在 綠3 那個位置有產生 我希望用符號標示 這就是 創新高的K棒產生向下跳空缺口
這是一根60 分大紅k 所以綠1 多紅1 且ˊ60分k低 在 一根1 分k 時就產生
引用:
最初由 ivancclai 發表
版主你好
這是我目前的圖
這樣解釋是否可以幫我解釋給版主
我希望再創新高綠1 創新低 紅1
之 後產生第一個缺口 劃黃橘線 開始位置標示
引用:
最初由 ivancclai 發表
這樣解釋是否可以幫我解釋給版主
我希望再創新高綠1 創新低 紅1
之 後產生第一個缺口 劃黃橘線 開始位置標示
版主你好
可以了 謝謝你
全部時間均為台灣時間, 現在時間為21:12 | 在這個頁面顯示本主題全部的 7 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.