奇狐社區論壇 總頁數 (2): « 1 [2]
在這個頁面顯示本主題全部的 17 個文章

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


由 cgjj 在 2009-10-22 23:38 發表:

引用:
最初由 king220.shih 發表
上面的問題我已解決,已經可以看到箭頭和數字,
但是問題又出來了,秀出箭頭和數字讓系統變的很慢。
怎麼會這樣呢?



DRAWICON與DRAWNUMBER 要置於迴圈外面唷
若置於其中一定是跑的慢(也不需要如此)

若不是如此則請將公式貼出來, 以便於了解協助您


由 king220.shih 在 2009-10-23 01:55 發表:



ZAry:=C*0; CC:=C;
S30:=time>=132500 or barpos=0; //強制出場
S11:=ref(c<o and v>4000,1) and S30=0 or barpos=0; //多進
S12:=ref(c>o and v<1000,1) or barpos=0; //多出
S21:=ref(c>o and v>4000,1) and S30=0 or barpos=0; //空進
S22:=ref(c<o and v<1000,1) or barpos=0; //空出
盈虧:ZAry linethick0;
進出:ZAry;
多空:=0; //1.多 -1.空 0.無
做價:=0; 停損:=30;
for i = lbound(ZAry) to datacount do begin
if 多空=0 then begin
多空:=S11[i]-S21[i]; 進出[i]:=多空;
if 多空<>0 then 做價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-做價)*多空;
CKO:=S12[i]-S22[i];
if CKO=多空 then begin
進出[i]:=CKO*2; 多空:=0;
end else if S30[i] then begin
進出[i]:=多空*3; 多空:=0;
end else if 盈虧[i]<-停損 then begin
進出[i]:=多空*4; 多空:=0;
end;
end;
end;

//[進出] 這變數值代表意義如下:
//1.為多單進場, 2.為多單平倉, 3.為多單強制平倉, 4.為多單控損平倉
//-1.為空單賣出,-2.為空單回補,-3.為空單強制回補,-4.為空單控損回補

DRAWICON(進出=1,L,4),PXDN40;
DRAWNUMBER(進出=1,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=1,L,'多單進場'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=2,H,5),PXUP40;
DRAWNUMBER(進出=2,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=2,H,'多單平倉'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=3,H,5),PXUP40;
DRAWNUMBER(進出=3,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=3,H,'多單強制平倉'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=4,H,5),PXUP40;
DRAWNUMBER(進出=4,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=4,H,'多單控損平倉'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-1,H,5),PXUP40;
DRAWNUMBER(進出=-1,H,O,0),PXUP70,COLORGREEN,ALIGN0;
DRAWTEXT(進出=-1,H,'空單賣出'),PXUP100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-2,L,4),PXDN40;
DRAWNUMBER(進出=-2,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-2,L,'空單回補'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-3,L,4),PXDN40;
DRAWNUMBER(進出=-3,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-3,L,'空單強制回補'),PXDN100,COLORYELLOW,ALIGN0;

DRAWICON(進出=-4,L,4),PXDN40;
DRAWNUMBER(進出=-4,L,O,0),PXDN70,COLORRED,ALIGN0;
DRAWTEXT(進出=-4,L,'空單控損回補'),PXDN100,COLORYELLOW,ALIGN0;
--------------------------------------------------------------------------------------

嗯!沒錯!是我將繪圖函數置於迴圈之內,所以系統變的很慢,
我將函數放在迴圈之外,就OK了!^^(語法如上,並附上圖檔)

感謝!總版主一言驚醒夢中人,原來就是這麼簡單阿!
奇狐有讚喔!功能實在是有夠強大的。光是這個迴圈語法
,就可以寫出非常多的程式了!而且程式碼不用很多。
不知道TS和HTS有沒有這樣強大的功能,Array陣列,For迴圈,
IF流程控制。很貼近原始的程式語言。有程式設計基礎的人,
應該是如魚得水吧!

再次感謝總版主,我繼續練功去,不懂再來問。感激不盡^^!


全部時間均為台灣時間, 現在時間為21:44 總頁數 (2): « 1 [2]
在這個頁面顯示本主題全部的 17 個文章


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

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