奇狐社區論壇 總頁數 (5): [1] 2 3 » ... 最末頁 »
在這個頁面顯示本主題全部的 64 個文章

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


由 a9681054 在 2022-10-17 11:24 發表:

績效統計問題

//
IF DATATYPE =11 or DATATYPE =1 or DATATYPE =2 or DATATYPE =3
then VERTLINE(ref(date,1)<>date), LINEDOT,COLORGRAY;
EXPLAIN(1,'==========')colorwhite;

//
SWCK:=TradeDate<>ref(TradeDate,1) or IsRegularFBar or barpos=1;
SP:barslast(SWCK)+1 LINETHICK;
WBC:=SUM((H+L+C*2)/4*V,SP)/SUM(V,SP);

//
direction:=C-ref(c,10);
volatility:=sum(abs(C-ref(C,1)),10);
Efficiency_Ratio:=abs(direction/volatility);
Fastst:=2/(2+1);
Slowst:=2/(30+1);
percentage:=Efficiency_Ratio * (Fastst-Slowst) + Slowst;
Constant:=percentage*percentage;
MM:C linethick;
for i=10+1 to datacount do begin
if SP[i]<=10 then begin
MM[i]:=WBC[i];
end else begin
MM[i]:=MM[i-1]+Constant[i]*(MM[i]-MM[i-1]);
end;
end;

//
XX:=sp>1 and MM>ref(MM,1);
YY:=sp>1 and MM<ref(MM,1);
BB:=REF(XX,1)=0 AND XX;
SS:=REF(YY,1)=0 AND YY;

//
DRAWICON(SP>1 AND BB ,L,'$SA-BS-2B.gif'),PXDN22;
DRAWICON(SP>1 AND SS ,H,'$SA-BS-2S.gif'),pxup42;
DRAWNUMBER(SP>1 AND BB,L,C,2)colorYELLOW pxdn50 shift1;
DRAWNUMBER(SP>1 AND SS,H,C,2)colorGREEN pxup70 shift1;

//績效
KC:=BB;
多進價:REF(C,BARSLAST(KC))LINETHICK;
多獲利:C-多進價 COLORRED;
KB:=SS;
空進價:REF(C,BARSLAST(KB))LINETHICK;
空獲利:空進價-C colorGREEN;
總獲利:SUM(多獲利*KB+空獲利*KC,0)colorcyan;

//解盤
EXPLAINEX(1,'多獲利:',多獲利,2,0)colorred;
EXPLAINEX(1,'空獲利:',空獲利,2,0)colorGREEN;
EXPLAINEX(1,'總獲利:',總獲利,2,0)colorcyan;

版主你好
請協助如下:
1)用於分線,每日分開統計績效
2)每日開盤後未產生訊號前,將多獲利/空獲利/總獲利歸0
3)開始有多空訊號時,才開始統計多獲利/空獲利/總獲利…一直到收盤

註:想了好久還是無法搞定,煩請版主幫忙…..

__________________
chiu


由 cgjj 在 2022-10-17 13:23 發表:

回覆: 績效統計問題

引用:
最初由 a9681054 發表
//
IF DATATYPE =11 or DATATYPE =1 or DATATYPE =2 or DATATYPE =3
then VERTLINE(ref(date,1)<>date), LINEDOT,COLORGRAY;
EXPLAIN(1,'==========')colorwhite;

//
SWCK:=TradeDate<>ref(TradeDate,1) or IsRegularFBar or barpos=1;
SP:barslast(SWCK)+1 LINETHICK;
WBC:=SUM((H+L+C*2)/4*V,SP)/SUM(V,SP);

//
direction:=C-ref(c,10);
volatility:=sum(abs(C-ref(C,1)),10);
Efficiency_Ratio:=abs(direction/volatility);
Fastst:=2/(2+1);
Slowst:=2/(30+1);
percentage:=Efficiency_Ratio * (Fastst-Slowst) + Slowst;
Constant:=percentage*percentage;
MM:C linethick;
for i=10+1 to datacount do begin
if SP[i]<=10 then begin
MM[i]:=WBC[i];
end else begin
MM[i]:=MM[i-1]+Constant[i]*(MM[i]-MM[i-1]);
end;
end;

//
XX:=sp>1 and MM>ref(MM,1);
YY:=sp>1 and MM<ref(MM,1);
BB:=REF(XX,1)=0 AND XX;
SS:=REF(YY,1)=0 AND YY;

//
DRAWICON(SP>1 AND BB ,L,'$SA-BS-2B.gif'),PXDN22;
DRAWICON(SP>1 AND SS ,H,'$SA-BS-2S.gif'),pxup42;
DRAWNUMBER(SP>1 AND BB,L,C,2)colorYELLOW pxdn50 shift1;
DRAWNUMBER(SP>1 AND SS,H,C,2)colorGREEN pxup70 shift1;

//績效
KC:=BB;
多進價:REF(C,BARSLAST(KC))LINETHICK;
多獲利:C-多進價 COLORRED;
KB:=SS;
空進價:REF(C,BARSLAST(KB))LINETHICK;
空獲利:空進價-C colorGREEN;
總獲利:SUM(多獲利*KB+空獲利*KC,0)colorcyan;

//解盤
EXPLAINEX(1,'多獲利:',多獲利,2,0)colorred;
EXPLAINEX(1,'空獲利:',空獲利,2,0)colorGREEN;
EXPLAINEX(1,'總獲利:',總獲利,2,0)colorcyan;

版主你好
請協助如下:
1)用於分線,每日分開統計績效
2)每日開盤後未產生訊號前,將多獲利/空獲利/總獲利歸0
3)開始有多空訊號時,才開始統計多獲利/空獲利/總獲利…一直到收盤

註:想了好久還是無法搞定,煩請版主幫忙…..



沒有交代每日最後的持有倉位如何處理!


由 a9681054 在 2022-10-17 14:04 發表:

每日最後的持有倉位如何處理?

回覆:以台指期來說就統計到1:35,之後再有多空訊號就不再統計

__________________
chiu


由 cgjj 在 2022-10-17 16:32 發表:

引用:
最初由 a9681054 發表
每日最後的持有倉位如何處理?

回覆:以台指期來說就統計到1:35,之後再有多空訊號就不再統計



答非所問!
13:35,之後再有多空訊號就不再統計,那是你買賣訊自己要去濾除的事,不應丟給統計來做

我問的是每日最後還持有的倉位,如何處理?
例如:
當日 13:30 有一個多的訊號(之後沒有訊號)
那個這個多訊是否納入獲利計算?以及它的獲利如何計算?
以就是每日最終倉位的處置方法!!!


由 a9681054 在 2022-10-17 16:50 發表:

當日 13:30 有一個多的訊號(之後沒有訊號)
那個這個多訊是否納入獲利計算?以及它的獲利如何計算?

回覆1:是

回覆2:就從那個1:30多訊計算到1:45

__________________
chiu


由 cgjj 在 2022-10-18 09:35 發表:

引用:
最初由 a9681054 發表
當日 13:30 有一個多的訊號(之後沒有訊號)
那個這個多訊是否納入獲利計算?以及它的獲利如何計算?

回覆1:是

回覆2:就從那個1:30多訊計算到1:45



這個指標並非是 多空多空多空...一直反手做!!
會有 空空多空多空 這種情形發生唷...
若非您原先預計的進出方式,請先過濾乾淨
訊號沒過濾乾淨前,請勿統計績效!!!


由 a9681054 在 2022-10-18 10:03 發表:

這個指標並非是 多空多空多空...一直反手做!!
會有 空空多空多空 這種情形發生唷...

回覆:這一點我了解

若非您原先預計的進出方式,請先過濾乾淨
訊號沒過濾乾淨前,請勿統計績效!!!

回覆:是我的預計進出方式,原po策略只是個範例會有其它策略

如不考慮上述問題,麻煩版主繼續協助,謝謝

__________________
chiu


由 cgjj 在 2022-10-18 10:19 發表:

引用:
最初由 a9681054 發表
這個指標並非是 多空多空多空...一直反手做!!
會有 空空多空多空 這種情形發生唷...

回覆:這一點我了解

若非您原先預計的進出方式,請先過濾乾淨
訊號沒過濾乾淨前,請勿統計績效!!!

回覆:是我的預計進出方式,原po策略只是個範例會有其它策略

如不考慮上述問題,麻煩版主繼續協助,謝謝



不能不考慮唷~~
不同的進出方式,計算上處理會不一樣!


由 a9681054 在 2022-10-18 13:22 發表:

請先過濾乾淨
訊號沒過濾乾淨前,請勿統計績效!!!

回覆:那請教是哪部份沒有過濾乾淨,不是很懂這部份請版主指導一下......

__________________
chiu


由 cgjj 在 2022-10-18 13:31 發表:

引用:
最初由 a9681054 發表
請先過濾乾淨
訊號沒過濾乾淨前,請勿統計績效!!!

回覆:那請教是哪部份沒有過濾乾淨,不是很懂這部份請版主指導一下......



多訊還沒碰到空訊之前,可能又會有多訊
空訊還沒碰到多訊之前,可能又會有空訊
也就是說可能會有同向的重複訊號


由 a9681054 在 2022-10-18 14:06 發表:

多訊還沒碰到空訊之前,可能又會有多訊
空訊還沒碰到多訊之前,可能又會有空訊
也就是說可能會有同向的重複訊號

回覆:
1)因當日分線不想沿用前一日訊號,而特意改成當日有達到多空條件才出現多空訊號,故會有出現版主所說之情形.

2)主要目的,我想在連續日分線下,各別去統計每日分線自己的多空訊號績效

3)以上補充充說明,不知這樣的需求版主是否可以幫忙完成?

__________________
chiu


由 cgjj 在 2022-10-18 14:16 發表:

引用:
最初由 a9681054 發表
多訊還沒碰到空訊之前,可能又會有多訊
空訊還沒碰到多訊之前,可能又會有空訊
也就是說可能會有同向的重複訊號

回覆:
1)因當日分線不想沿用前一日訊號,而特意改成當日有達到多空條件才出現多空訊號,故會有出現版主所說之情形.

2)主要目的,我想在連續日分線下,各別去統計每日分線自己的多空訊號績效

3)以上補充充說明,不知這樣的需求版主是否可以幫忙完成?



與 1) 無關唷,自己定義的規則,要去好好瞧瞧檢查唷! 例如下圖。

正常來說
您必須要為 1) ,加入強制出場的機制,而非交給績效統計來做


由 a9681054 在 2022-10-18 17:59 發表:

與 1) 無關唷,自己定義的規則,要去好好瞧瞧檢查唷! 例如下圖。

回覆:
看了圖後發現當日不應該會出現多多空的狀況,我的程式設定應是有問題,我自己再檢查一下,後續再跟版主請教,抱歉...

__________________
chiu


由 a9681054 在 2022-10-18 19:34 發表:

與 1) 無關唷,自己定義的規則,要去好好瞧瞧檢查唷! 例如下圖。

正常來說
您必須要為 1) ,加入強制出場的機制,而非交給績效統計來做

回覆:
1)再次檢查一下程式,如版主所說...與 1) 無關

2)那加入強制出場的機制.....這個部份我不會弄,可否請版主幫忙一下?

__________________
chiu


由 cgjj 在 2022-10-19 10:38 發表:

引用:
最初由 a9681054 發表
與 1) 無關唷,自己定義的規則,要去好好瞧瞧檢查唷! 例如下圖。

正常來說
您必須要為 1) ,加入強制出場的機制,而非交給績效統計來做

回覆:
1)再次檢查一下程式,如版主所說...與 1) 無關

2)那加入強制出場的機制.....這個部份我不會弄,可否請版主幫忙一下?



2) 的部分
1.首先要決定在哪一根(時間)做強制平倉
2.把那根,以及那根之後的所有訊號,都濾除掉
3.然後判斷當日是否有進場過(有持倉),若有則在那根給個強制平倉訊號(倉位歸零),若無則不需給強制平倉訊號


全部時間均為台灣時間, 現在時間為17:29 總頁數 (5): [1] 2 3 » ... 最末頁 »
在這個頁面顯示本主題全部的 64 個文章


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

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