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

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


由 jc9510 在 2008-09-06 11:46 發表:

迴圈問題

計畫在一分鐘線上, 設計一當沖指標 myStart := BARSLAST(開盤後, 條件A);
想找出從 myStart 到目前的 K 線 (所謂目前, 是指即時連線時, 還在跳動的 K 棒) , 再一一挑出個別 K 棒來做一些過濾及處理.

請教 : 如何用迴圈完成 ?

好像總會碰到 : 數列無法用在迴圈判斷上的問題 !


由 cgjj 在 2008-09-08 09:27 發表:

回覆: 迴圈問題

引用:
最初由 jc9510 發表
計畫在一分鐘線上, 設計一當沖指標 myStart := BARSLAST(開盤後, 條件A);
想找出從 myStart 到目前的 K 線 (所謂目前, 是指即時連線時, 還在跳動的 K 棒) , 再一一挑出個別 K 棒來做一些過濾及處理.

請教 : 如何用迴圈完成 ?

好像總會碰到 : 數列無法用在迴圈判斷上的問題 !



範例:

原碼:

//NN為數列
//OO為開盤價(數列)
for iStartNo to EndNo do begin
  
if NN[i]>OO[i]  then  begin
    
.......
  
end else begin
    
.......
  
end;
end;



詳見教學
http://www.chiefox.com.tw/bbs/forum...p?s=&forumid=46


由 jc9510 在 2008-09-08 11:08 發表:

感謝你的指導 !

但是我的問題是 :


myStart := BARSLAST(條件 A);

for I=0 to myStart do begin
ref(c, I) .....
.
.
.
這個 for loop 無法通過, 我想應該是 myStart 是數列的關係 , 有別的途徑嗎 ?


由 cgjj 在 2008-09-08 11:37 發表:

引用:
最初由 jc9510 發表
感謝你的指導 !
但是我的問題是 :
myStart := BARSLAST(條件 A);
for I=0 to myStart do begin
ref(c, I) .....
:
這個 for loop 無法通過, 我想應該是 myStart 是數列的關係 , 有別的途徑嗎 ?



myStart := BARSLAST(條件 A);
這樣求得的是距離唷, 不是位置

您把要做的完整貼上來吧
我們協助您


由 jc9510 在 2008-09-08 12:39 發表:

我的程式尚未寫完, 因為到 For 就編譯錯誤了, 可否告訴我, 取得距離目前跳動的 K 棒往前 myStart 距離的位置 及[目前跳動的 K 棒位置] 的方法, 謝謝 !!


由 cgjj 在 2008-09-08 13:29 發表:

引用:
最初由 jc9510 發表
我的程式尚未寫完, 因為到 For 就編譯錯誤了, 可否告訴我, 取得距離目前跳動的 K 棒往前 myStart 距離的位置 及[目前跳動的 K 棒位置] 的方法, 謝謝 !!


最末根K棒編號, 可用 datacount 取得
發生位置可用 datacount-距離 來取得
把要做的需求貼上來吧
我們協助您較快


由 jc9510 在 2008-09-10 09:28 發表:

1. 謝謝回覆 , 可能是我表達有誤 , datacount 好像不符我想像的

2. 我簡化我想做的 , 只取跟這次主題有關的 .
我想用 KD 指標來延伸做一些檢查

StartPos := BarsLast(Cross (K, D) Or Cross(D, K));
然後, 把上一次 KD 交叉的點到目前所在位置的所有 K 值 及 Close 值取出來.

這樣我就可以再進一步做我要的運算了 !
有勞了 ! 謝謝 !!


由 cgjj 在 2008-09-10 12:21 發表:

所有 K 值 及 Close 值取出來.
這樣我就可以再進一步做我要的運算了 !


您這樣問, 我真的不知該如何回答您的問題
運算後這些數本來就存在數列之中
就看您要如何運用它來運算
運用方法不同, 技巧方法也不會相同

請舉完整的實例發問吧


由 jc9510 在 2008-09-10 13:22 發表:

因為要畫圖才說的清楚, 所以原先才想簡化問題.

問題 : 如附件圖,

在 X 點做空後, 沿著 K 值計算出夾角 HXA , HXB , HXC , ... , HXE 這些角度的差應該都在設定的誤差範圍裡, 一直到 HXF , HXG , 角度才明顯變小, 這時若 Close 也一直變大 , 就秀出訊號 , 平掉空單.

反之, 做多也是同理 !


由 cgjj 在 2008-09-10 17:05 發表:

引用:
最初由 jc9510 發表
因為要畫圖才說的清楚, 所以原先才想簡化問題.

問題 : 如附件圖,

在 X 點做空後, 沿著 K 值計算出夾角 HXA , HXB , HXC , ... , HXE 這些角度的差應該都在設定的誤差範圍裡, 一直到 HXF , HXG , 角度才明顯變小, 這時若 Close 也一直變大 , 就秀出訊號 , 平掉空單.

反之, 做多也是同理 !



//範例如下:
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,M1,1);
D:=SMA(K,M2,1);
CK1:=CROSS(D,K);
DRAWICON(CK1,H,2) pxup40; //空頭進
CK2:=CK1=0 and C>REF(C,1);
CK2:=CK2=1 and SUM(CK2,BARSLAST(CK1)+1)=1;
DRAWICON(CK2,L,1) pxdn20; //空頭出


由 jc9510 在 2008-09-10 17:47 發表:

謝謝你 !!


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


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

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