![]() |
總頁數 (3): « 1 2 [3] 在這個頁面顯示本主題全部的 42 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 如何顯示K棒的正中間 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=23795)
版主大大你好
修改後的
改用 ReFX(H,1)-(H-L) 之值與未來的H做比較
改用 refx(L,1)+((H-L) 之值與未來的L做比我還是不會陣列 謝謝你 謝謝你
Rexf(H,1)-(H-L) 應該是 Refx(H,1)-(H-L) 我打字的問題
請在幫我看看 謝謝
版主大大你好
這是我 還不會修改
//=================================k棒 高低點============================================
HH:=H; LL:=L;
k1:=mod(HH,100000);
k2:=mod(LL,100000);
DH:=C*0; DL:=DH;
for i=1 to datacount do begin
for j=i+1 to datacount do begin
if HH[j]>HH[i] then begin
DH[i]:=j; break;
end;
end;
for j=i+1 to datacount do begin
if LL[j]<LL[i] then begin
DL[i]:=j; break;
end;
end;
end;
DRAWNUMBER(DH=0,HH,k1,0) ALIGN0 pxup25,colorWHITE;
DRAWNUMBER(DL=0,LL,k2,0) ALIGN0 pxdn25 colorWHITE;
DRAWNUMBER(DH>0,HH,k1,0) ALIGN0 pxup25,colorRED;
DRAWNUMBER(DL>0,LL,k2,0) ALIGN0 pxdn25 colorGREEN;
DRAWNUMBER(1,LL,HH-LL,0) ALIGN0 pxDN100 colorWHITE;//H-L 點數
//=======================================================================
//==================== 堆K ===========================================
HH:=H; LL:=L;
DH:=C*0; DL:=DH; 差:=HH-LL;
for i=2 to datacount-1 do begin
for j=i+1 to datacount do begin
if HH[j]>HH[i+1]-差[i] then begin
DH[i]:=j; break;
end;
end;
for j=i+1 to datacount do begin
if LL[j]<LL[i+1]+差[i] then begin
DL[i]:=j; break;
end;
end;
end;
REFXH:=mod(REFx(HIGH,1),100000);
REFXL:=mod(REFx(LOW,1),100000);
DRAWNUMBER(DH=0,HH,REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorWHITE;
DRAWNUMBER(DL=0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorWHITE;
DRAWTEXT(DH=0, HH, '+S=') align2,colorWHITE,PXUP75;
DRAWTEXT(DL=0, LL, '-s=') align2,colorWHITE,PXDN75;
DRAWNUMBER(DH>0,HH, REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorRED;
DRAWTEXT(DH>0, HH, '+S=') align2,colorRED,PXUP75;
DRAWNUMBER(DL>0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorGREEN;
DRAWTEXT(DL>0, LL,'-s=') align2,colorGREEN,PXDN75;
//=============================================================================
SH:=SYSPARAM(4); SL:=SYSPARAM(5); SS:=SH-SL;
STICKLINE(1,SH+SS*0.1,SL-SS*0.1,0,0) COLORTRANSPARENT;
目前數字是對的
K棒高低點位 顏色變化是正確的
+S and -S 數字正確 顏色變化還是不正確 我不會修改 可以幫我看看 謝謝
引用:
最初由 ivancclai 發表
版主大大你好
這是我 還不會修改
//=================================k棒 高低點============================================
HH:=H; LL:=L;
k1:=mod(HH,100000);
k2:=mod(LL,100000);
DH:=C*0; DL:=DH;
for i=1 to datacount do begin
for j=i+1 to datacount do begin
if HH[j]>HH[i] then begin
DH[i]:=j; break;
end;
end;
for j=i+1 to datacount do begin
if LL[j]<LL[i] then begin
DL[i]:=j; break;
end;
end;
end;
DRAWNUMBER(DH=0,HH,k1,0) ALIGN0 pxup25,colorWHITE;
DRAWNUMBER(DL=0,LL,k2,0) ALIGN0 pxdn25 colorWHITE;
DRAWNUMBER(DH>0,HH,k1,0) ALIGN0 pxup25,colorRED;
DRAWNUMBER(DL>0,LL,k2,0) ALIGN0 pxdn25 colorGREEN;
DRAWNUMBER(1,LL,HH-LL,0) ALIGN0 pxDN100 colorWHITE;//H-L 點數
//=======================================================================
//==================== 堆K ===========================================
HH:=H; LL:=L;
DH:=C*0; DL:=DH; 差:=HH-LL;
for i=2 to datacount-1 do begin
for j=i+1 to datacount do begin
if HH[j]>HH[i+1]-差[i] then begin
DH[i]:=j; break;
end;
end;
for j=i+1 to datacount do begin
if LL[j]<LL[i+1]+差[i] then begin
DL[i]:=j; break;
end;
end;
end;
REFXH:=mod(REFx(HIGH,1),100000);
REFXL:=mod(REFx(LOW,1),100000);
DRAWNUMBER(DH=0,HH,REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorWHITE;
DRAWNUMBER(DL=0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorWHITE;
DRAWTEXT(DH=0, HH, '+S=') align2,colorWHITE,PXUP75;
DRAWTEXT(DL=0, LL, '-s=') align2,colorWHITE,PXDN75;
DRAWNUMBER(DH>0,HH, REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorRED;
DRAWTEXT(DH>0, HH, '+S=') align2,colorRED,PXUP75;
DRAWNUMBER(DL>0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorGREEN;
DRAWTEXT(DL>0, LL,'-s=') align2,colorGREEN,PXDN75;
//=============================================================================
SH:=SYSPARAM(4); SL:=SYSPARAM(5); SS:=SH-SL;
STICKLINE(1,SH+SS*0.1,SL-SS*0.1,0,0) COLORTRANSPARENT;
目前數字是對的
K棒高低點位 顏色變化是正確的
+S and -S 數字正確 顏色變化還是不正確 我不會修改 可以幫我看看 謝謝
版主大大你好
我要的是我寫 謝謝你 可以幫我改成此邏輯
Refx(H,1)-(H-L)
Refx(L,1)+(H-L)
DRAWNUMBER(DH=0,HH,REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorWHITE;
DRAWNUMBER(DL=0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorWHITE;
寫程式的部分才正確 謝謝
謝謝
引用:
最初由 ivancclai 發表
版主大大你好
我要的是我寫 謝謝你 可以幫我改成此邏輯
Refx(H,1)-(H-L)
Refx(L,1)+(H-L)
DRAWNUMBER(DH=0,HH,REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorWHITE;
DRAWNUMBER(DL=0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorWHITE;
寫程式的部分才正確 謝謝
謝謝
我不知道這兩者有何差異
DRAWNUMBER(DH=0,HH,REFXL+(HIGH-LOW),0) ALIGN1 pxup75,colorWHITE;
DRAWNUMBER(DL=0,LL,REFXH-(HIGH-LOW),0) ALIGN1 pxdn75 colorWHITE;
這一個正確 我debug 過
引用:
最初由 ivancclai 發表
我不知道這兩者有何差異
版主大大你好
謝謝你的解釋 要如何修正計算值跟 DRAWNUMBER 一致呢
按定義是:
改用 refx(L,1)+(H-L) 之值與未來的H做比較,若未來的H大過該值,則 DH>0 顯示紅
改用 refx(H,1)-(H-L) 之值與未來的L做比較,若未來的L小過該值,則 DL>0 顯示綠
謝謝版ˋ主大大
引用:
最初由 ivancclai 發表
版主大大你好
謝謝你的解釋 要如何修正計算值跟 DRAWNUMBER 一致呢
按定義是:
改用 refx(L,1)+(H-L) 之值與未來的H做比較,若未來的H大過該值,則 DH>0 顯示紅
改用 refx(H,1)-(H-L) 之值與未來的L做比較,若未來的L小過該值,則 DL>0 顯示綠
謝謝版ˋ主大大
原碼:
HH:=H; LL:=L; k1:=mod(HH,1000); k2:=mod(LL,1000); DH:=C*0; DL:=DH; 差:=HH-LL; for i=2 to datacount-1 do begin for j=i+1 to datacount do begin if HH[j]>LL[i+1]+差[i] then begin DH[i]:=j; break; end; end; for j=i+1 to datacount do begin if LL[j]<HH[i+1]-差[i] then begin DL[i]:=j; break; end; end; end;
謝謝版主大大
我測試過是我需要的
如圖例
全部時間均為台灣時間, 現在時間為04:30 | 總頁數 (3): « 1 2 [3] 在這個頁面顯示本主題全部的 42 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.