![]() |
總頁數 (3): « 1 [2] 3 » 在這個頁面顯示本主題全部的 34 個文章 |
奇狐社區論壇 (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=17681)
感謝總版主一路相挺,目前尚缺績效統計公式:
有一點複雜,但請您相信這是必要的作法
統計的週期是 從 本次cross(R2B,30) 到出現cross(30,R2B) 作最後結算
買賣價與未平倉價全部都以 平均價=(最高+最低+收盤(盤中最新價))/3 作計價
舉一個持量變化的例子,假設有一檔股票的某一段行情
持量的紀錄為 cross(R2B,30)開始 2→4→2→4→3→2→1→2→0 cross(30,R2B)結束
實際的情況為: 買點一*2→買點二*2→賣點一*2→買點三*2→賣點二*1→賣點三*1→賣點四*1→買點四*1→賣點五*2
一共是 買7-賣7=0
小弟所希望做到的動態績效統計需求如下:
1. 當cross(30,R2B)成立時,計算本次平倉總績效,並保留本次的績效,直到下一次cross(R2B,30)成立為止
算法應為 (賣點一*2+賣點二*1+賣點三*1+賣點四*1+賣點五*2)/7 除以(買點一*2+買點二*2+買點三*2+買點四*1)/7
2. 在還沒有完全平倉之前,希望可以動態性的求得暫時性的績效,例如:
賣點一成立時的績效為: 賣點一的平均價/(買點一平均價*2+買點二平均價*2)除以4
賣點二成立時的績效為: (賣點一的平均價*2+賣點二的平均價*1)除以3/(買點一平均價*2+買點二平均價*2+買點三平均價*2)除以6
以此類推
3. 買點一*2→買點二*2 已經成立,但賣點一還沒出現之前
則績效=當下的平均價/(買點一平均價*2+買點二平均價*2)除以4
買點一*2→買點二*2→賣點一*2→買點三*2 已經成立,但賣點二還沒出現之前
則績效=(當下的平均價+賣點一的平均價)除以2/(買點一平均價*2+買點二平均價*2+買點三平均價*2)除以6
以此類推
感謝總版主
引用:
最初由 tycoon868 發表
感謝總版主一路相挺,目前尚缺績效統計公式:
有一點複雜,但請您相信這是必要的作法
統計的週期是 從 本次cross(R2B,30) 到出現cross(30,R2B) 作最後結算
買賣價與未平倉價全部都以 平均價=(最高+最低+收盤(盤中最新價))/3 作計價
舉一個持量變化的例子,假設有一檔股票的某一段行情
持量的紀錄為 cross(R2B,30)開始 2→4→2→4→3→2→1→2→0 cross(30,R2B)結束
實際的情況為: 買點一*2→買點二*2→賣點一*2→買點三*2→賣點二*1→賣點三*1→賣點四*1→買點四*1→賣點五*2
一共是 買7-賣7=0
小弟所希望做到的動態績效統計需求如下:
1. 當cross(30,R2B)成立時,計算本次平倉總績效,並保留本次的績效,直到下一次cross(R2B,30)成立為止
算法應為 (賣點一*2+賣點二*1+賣點三*1+賣點四*1+賣點五*2)/7 除以(買點一*2+買點二*2+買點三*2+買點四*1)/7
2. 在還沒有完全平倉之前,希望可以動態性的求得暫時性的績效,例如:
賣點一成立時的績效為: 賣點一的平均價/(買點一平均價*2+買點二平均價*2)除以4
賣點二成立時的績效為: (賣點一的平均價*2+賣點二的平均價*1)除以3/(買點一平均價*2+買點二平均價*2+買點三平均價*2)除以6
以此類推
3. 買點一*2→買點二*2 已經成立,但賣點一還沒出現之前
則績效=當下的平均價/(買點一平均價*2+買點二平均價*2)除以4
買點一*2→買點二*2→賣點一*2→買點三*2 已經成立,但賣點二還沒出現之前
則績效=(當下的平均價+賣點一的平均價)除以2/(買點一平均價*2+買點二平均價*2+買點三平均價*2)除以6
以此類推
感謝總版主
補充說明如下:
1. 尚未出現賣點前,以當下的平均價算出暫時的報酬率
2. 賣點成立時,則以該賣點的平均價計算
3. 如遇到賣出又買進,買進的成本需要合計 期初+期中發生的新買訊
4. 以上都是尚未完全平倉前的暫時績效,周期結束時,才正式作一個結算
謝謝
引用:
最初由 tycoon868 發表
補充說明如下:
1. 尚未出現賣點前,以當下的平均價算出暫時的報酬率
2. 賣點成立時,則以該賣點的平均價計算
3. 如遇到賣出又買進,買進的成本需要合計 期初+期中發生的新買訊
4. 以上都是尚未完全平倉前的暫時績效,周期結束時,才正式作一個結算
謝謝
謝謝總版主的細心:
我之前的思慮不夠周延
您是對的,確實應該修正為: 分母為已實現的買點之總買進金額
分子應該為: (已實現賣點倉位的總賣出金額+未實現倉位的平均價之合)
(當下的平均價*4(尚未平倉)+賣點一平均價*2(已平倉))除以6/(買點一平均價*2+買點二平均價*2+買點三平均價*2)除以6~~才是正確的
麻煩您延續之前的 持量計算公式,指點如何完成這部分績效統計的語法
感謝
引用:
最初由 tycoon868 發表
謝謝總版主的細心:
我之前的思慮不夠周延
您是對的,確實應該修正為: 分母為已實現的買點之總買進金額
分子應該為: (已實現賣點倉位的總賣出金額+未實現倉位的平均價之合)
(當下的平均價*4(尚未平倉)+賣點一平均價*2(已平倉))除以6/(買點一平均價*2+買點二平均價*2+買點三平均價*2)除以6~~才是正確的
麻煩您延續之前的 持量計算公式,指點如何完成這部分績效統計的語法
感謝
原碼:
買訊1:=買訊1 or barpos=0;
買訊2:=買訊2 or barpos=0;
買訊3:=買訊3 or barpos=0;
買訊4:=買訊4 or barpos=0;
買訊5:=買訊5 or barpos=0;
賣訊1:=賣訊1 or barpos=0;
賣訊2:=賣訊2 or barpos=0;
賣訊3:=賣訊3 or barpos=0;
賣訊4:=賣訊4 or barpos=0;
賣訊5:=賣訊5 or barpos=0;
賣訊6:=賣訊6 or barpos=0;
買訊:=(買訊1+買訊2+買訊3)*2+(買訊3+買訊5);
賣訊:=賣訊1+賣訊2+賣訊3+賣訊4+賣訊5;
買賣:=買訊-賣訊;
持量:C*0; //當根動作後所持有的數量
NowN:=0; 平均價:=(H+L+C)/3;
BC:=0; SC:=0; BN:=0; SN:=0;
PP:C*0 NOAXIS;
for i=1 to datacount do begin
NewN:=NowN+買賣[i];
if NewN<0 or 賣訊6[i]=1 then NewN:=0;
if NewN>4 then NewN:=4;
AddN:=NewN-NowN;
if AddN>0 then begin
BC:=BC+平均價[i]*AddN;
BN:=BN+AddN;
end else if AddN<0 then begin
SC:=SC-平均價[i]*AddN;
SN:=SN-AddN;
end;
NowN:=NewN; 持量[i]:=NowN;
SSC:=SC+平均價[i]*NowN;
SSN:=SN+NowN;
PP[i]:=(SSC/SSN)/(BC/BN);
if 賣訊6[i]=1 then begin
BC:=0; SC:=0; BN:=0; SN:=0;
end;
end;
總版主午安
經過套入測試,結果如下
1. 經過手動驗算正確無誤,不過PP值需要化成百分比
目前結果為:PP=1.86,其實正確應為 86(%)
我將這一行 PP[i]:=((SSC/SSN)/(BC/BN));
修改成 PP[i]:=(((SSC/SSN)/(BC/BN))-1)*100;
結果: 有買進作多的行情段落正常顯示,沒有介入的行情段落會變成-100
請教應該如何正確的修改
2. 除了上面已經算出的動態績效PP,希望得到實際的資金變化與原始投入績效QQ:
舉一個實際的例子(品安8088) 整波段的持量變化為 2 →4 →3 →2 →1 →2 →1 →0
資金交易狀變化即是: 買點1*2000+買點2*2000-賣點1*1000-賣點2*1000-賣點3*1000+買點3*1000-賣點4*1000-賣點5*1000
希望求得當下實際的資金額,並且以買點1+買點2(有時候只有買點1後便出現持量=0,買點2則忽略)作為原始投入資金,計算一個原始投入績效QQ
這一次毋須計算未平倉部分,只需要在持量=0 時,求出 QQ=(總回收資金/原始投入資金)*100 即可,另外輸出2 →4 →3 →2 →1 →2 →1 →0 整段資金的數值(全部皆以 1000股*平均價計算)
麻煩您延續之前的 持量計算公式,指點如何完成這部分績效統計的語法
3. 根據需求2所算出的 已經完全平倉的 QQ=(總回收資金/原始投入資金)*100
請問如何寫以下的統計公式(請您賜教寫法即可,結果輸出部分由我自行處理)
以下的兩年是以日K=240根為計算基礎
a. 希望算出近兩年來的總作多次數(cross(R2B,30) 到出現cross(30,R2B) 視為一次)
b. 兩年來已經完全平倉(持量=0)的累計報酬率(虧損部分直接減除)
c. 交易成功率: 成功的次數/總交易次數(完全平倉時的PP值<3%則視為失敗)
d. 最大浮動報酬率(附帶輸出該未平倉日期)
e. 最大浮動虧損率(附帶輸出該未平倉日期)
感謝您的協助
引用:
最初由 tycoon868 發表
總版主午安
經過套入測試,結果如下
1. 經過手動驗算正確無誤,不過PP值需要化成百分比
目前結果為:PP=1.86,其實正確應為 86(%)
我將這一行 PP[i]:=((SSC/SSN)/(BC/BN));
修改成 PP[i]:=(((SSC/SSN)/(BC/BN))-1)*100;
結果: 有買進作多的行情段落正常顯示,沒有介入的行情段落會變成-100
請教應該如何正確的修改
引用:
最初由 tycoon868 發表
2. 除了上面已經算出的動態績效PP,希望得到實際的資金變化與原始投入績效QQ:
舉一個實際的例子(品安8088) 整波段的持量變化為 2 →4 →3 →2 →1 →2 →1 →0
資金交易狀變化即是: 買點1*2000+買點2*2000-賣點1*1000-賣點2*1000-賣點3*1000+買點3*1000-賣點4*1000-賣點5*1000
希望求得當下實際的資金額,並且以買點1+買點2(有時候只有買點1後便出現持量=0,買點2則忽略)作為原始投入資金,計算一個原始投入績效QQ
這一次毋須計算未平倉部分,只需要在持量=0 時,求出 QQ=(總回收資金/原始投入資金)*100 即可,另外輸出2 →4 →3 →2 →1 →2 →1 →0 整段資金的數值(全部皆以 1000股*平均價計算)
麻煩您延續之前的 持量計算公式,指點如何完成這部分績效統計的語法
3. 根據需求2所算出的 已經完全平倉的 QQ=(總回收資金/原始投入資金)*100
請問如何寫以下的統計公式(請您賜教寫法即可,結果輸出部分由我自行處理)
以下的兩年是以日K=240根為計算基礎
a. 希望算出近兩年來的總作多次數(cross(R2B,30) 到出現cross(30,R2B) 視為一次)
b. 兩年來已經完全平倉(持量=0)的累計報酬率(虧損部分直接減除)
c. 交易成功率: 成功的次數/總交易次數(完全平倉時的PP值<3%則視為失敗)
d. 最大浮動報酬率(附帶輸出該未平倉日期)
e. 最大浮動虧損率(附帶輸出該未平倉日期)
感謝您的協助
感謝總版主:
是的,我也覺得這樣太麻煩您了,其實我是很希望自己來作評測的部分,所以請求您讓我聊解這個迴圈的意義
以下的部分請您幫我註解一下,讓我充分理解您所惠贈的迴圈公式,好讓我可以自行作延伸與變化
BC:
BN:
SC:
SN:
SSC:
SSN:
理解這個迴圈用法後,我會自行嘗試,也盼望實作的過程中,如果有小小的提問可以持續得到您的支援
感謝
引用:
最初由 tycoon868 發表
感謝總版主:
是的,我也覺得這樣太麻煩您了,其實我是很希望自己來作評測的部分,所以請求您讓我聊解這個迴圈的意義
以下的部分請您幫我註解一下,讓我充分理解您所惠贈的迴圈公式,好讓我可以自行作延伸與變化
BC:
BN:
SC:
SN:
SSC:
SSN:
理解這個迴圈用法後,我會自行嘗試,也盼望實作的過程中,如果有小小的提問可以持續得到您的支援
感謝
前述的
2.賣到變成空手時
與
if 賣訊6[i]=1 or NowN=0 then begin
是相關聯的
若不要這部份
就將
if 賣訊6[i]=1 or NowN=0 then begin
改回
if 賣訊6[i]=1 then begin
感謝,這樣子我應該可以自己完成到約80%~90%了,謝謝!
引用:
最初由 tycoon868 發表
感謝,這樣子我應該可以自己完成到約80%~90%了,謝謝!
總版主
我希望求得資金變化 QQ:SC-BC,linethick1; 求出來的值是我所要的,但是必須用訓練模式才能看到歷史的
值,希望作成副圖(可以顯示歷史數據),希望這個QQ可以像PP值一樣可以移動查價,請問應該如何修改?
謝謝
全部時間均為台灣時間, 現在時間為17:03 | 總頁數 (3): « 1 [2] 3 » 在這個頁面顯示本主題全部的 34 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.