奇狐社區論壇
在這個頁面顯示本主題全部的 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=14116)


由 et8i 在 2010-08-10 18:50 發表:

看了交易範例.請問?如何顯示現在部位

線上研讀,看了交易範例.請問?如何顯示現在部位



強出:=ACK0 or barpos=0;
多進:=AB01 and 強出=0 or barpos=0;
多出:=ABZ1 or barpos=0;
空進:=AS01 and 強出=0 or barpos=0;
空出:=ASZ1 or barpos=0;
進場:=多進-空進;
出場:=多出-空出;
控損:=30; 控利:=60;
進價:=0; CC:=C;
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS;
盈虧:C*0 linethick;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=進場[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 強出[i] then begin
進出[i]:=多空*5; 多空:=0;
end else if 多空=出場[i] then begin
進出[i]:=多空*2; 多空:=0;
end else if 盈虧[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.空控損出


由 july2008 在 2010-08-11 08:40 發表:

回覆: 看了交易範例.請問?如何顯示現在部位

引用:
最初由 et8i 發表
線上研讀,看了交易範例.請問?如何顯示現在部位



強出:=ACK0 or barpos=0;
多進:=AB01 and 強出=0 or barpos=0;
多出:=ABZ1 or barpos=0;
空進:=AS01 and 強出=0 or barpos=0;
空出:=ASZ1 or barpos=0;
進場:=多進-空進;
出場:=多出-空出;
控損:=30; 控利:=60;
進價:=0; CC:=C;
多空:=0; //1.多 -1.空 0.無
進出:C*0 NOAXIS;
盈虧:C*0 linethick;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=進場[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 強出[i] then begin
進出[i]:=多空*5; 多空:=0;
end else if 多空=出場[i] then begin
進出[i]:=多空*2; 多空:=0;
end else if 盈虧[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.空控損出



進出=1(多單進場) 進出=-1(空單進場) 其它以此類推

__________________


由 et8i 在 2010-08-11 18:51 發表:

誤會!是要圖形顯示 當時部位

誤會!是要程式圖形顯示 當時部位


由 july2008 在 2010-08-11 19:48 發表:

回覆: 誤會!是要圖形顯示 當時部位

引用:
最初由 et8i 發表
誤會!是要程式圖形顯示 當時部位



圖形顯示????
抱歉不懂意思 舉例說明一下

__________________


由 et8i 在 2010-08-14 08:06 發表:

圖形顯示 現在應持有的部位

圖形顯示 現在應持有的部位
如 多進2口 現在應持有的部位 2
停利1口 現在應持有的部位1
停損 現在應持有的部位0
空 2口 現在應持有的部位 -2

由範例中
圖形顯示 現在應持有的部位


由 cgjj 在 2010-08-16 09:16 發表:

回覆: 圖形顯示 現在應持有的部位

引用:
最初由 et8i 發表
圖形顯示 現在應持有的部位
如 多進2口 現在應持有的部位 2
停利1口 現在應持有的部位1
停損 現在應持有的部位0
空 2口 現在應持有的部位 -2

由範例中
圖形顯示 現在應持有的部位



把動作數字化, 再去累加數字(Sum), 就可得到
例如:
 多進2口 當做 +2
 停利1口 當做 -1
 停損1口 當做 -1
 空2口 當做 -2


由 et8i 在 2010-08-17 15:45 發表:

如何用程式.顯示?這就是我的問題

如何用程式.顯示當時部位??這就是我的問題 sum 在程式中取何數值?
position:=sum(???);


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

回覆: 如何用程式.顯示?這就是我的問題

引用:
最初由 et8i 發表
如何用程式.顯示當時部位??這就是我的問題 sum 在程式中取何數值?
position:=sum(???);



sum( (訊號正負方向) * (動作口數) , 0 )

也就是

sum( 訊號1正負*訊號1動作口數+訊號2正負*訊號2動作口數+ .... , 0 )


由 cgjj 在 2010-08-17 16:12 發表:

您前面提的範例並無多口狀況, 其是單口進單口出 或 以同口數進出
以該例來說不需要用 Sum

將這段程式

for i = 1 to datacount do begin
if 多空=0 then begin
多空:=進場[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 強出[i] then begin
進出[i]:=多空*5; 多空:=0;
end else if 多空=出場[i] then begin
進出[i]:=多空*2; 多空:=0;
end else if 盈虧[i]>=控利 then begin
進出[i]:=多空*3; 多空:=0;
end else if 盈虧[i]<=-控損 then begin
進出[i]:=多空*4; 多空:=0;
end;
end;
end;

改為

部位:c*0;
for i = 1 to datacount do begin
if 多空=0 then begin
多空:=進場[i]; 進出[i]:=多空;
if 多空<>0 then 進價:=CC[i];
end else if 多空<>0 then begin
盈虧[i]:=(CC[i]-進價)*多空;
if 強出[i] then begin
進出[i]:=多空*5; 多空:=0;
end else if 多空=出場[i] then begin
進出[i]:=多空*2; 多空:=0;
end else if 盈虧[i]>=控利 then begin
進出[i]:=多空*3; 多空:=0;
end else if 盈虧[i]<=-控損 then begin
進出[i]:=多空*4; 多空:=0;
end;
end;
部位[i]:=多空;
end;
部位:=部位*口數; //這邊設的口數, 為同口數進出


由 et8i 在 2010-08-17 16:19 發表:

謝謝 我試一試 主要是迴圈不太懂

感激 想很久 主要是迴圈不太懂 .有您提點 就容易通了


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


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

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