欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 如图优化参数里的表头能加入总风收比这一项吗?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2517人关注过本帖树形打印复制链接

主题:如图优化参数里的表头能加入总风收比这一项吗?

帅哥哟,离线,有人找我吗?
Tiffany1
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:124 积分:0 威望:0 精华:0 注册:2020/12/11 16:17:55
如图优化参数里的表头能加入总风收比这一项吗?  发帖心情 Post By:2020/12/20 16:21:31 [只看该作者]

       总风收比就是,比如一共3笔交易,一次亏3%,一次亏4%,一次赚10%。
       亏3%就等于把资金除以约1.0309,亏4%就等于把资金除以约1.0417,赚10%就等于 把资金乘以1.1。
      然后1.0309*1.0417=1.0739,这就是亏损合计。然后求盈利合计和亏损合计的log对数函数,以亏损合计为底。
      就得到总盈利倍数是总亏损倍数的几倍,这就是总风收比。

       或者比如胜率为50.01%,平均每把盈利为10%——也就等于把资金乘以1.1,平均每把亏损为3%——也就等于把资金除以1.0309。
       然后求pow(),1.1^(50.01%)=A,1.0309^(1-50.01%)=B,然后再求这两个数A和B的log(),以B为底。就是总风收比

       以上两种计算方法算出来是同一个结果


[此贴子已经被作者于2020/12/20 16:23:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Tiffany1
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:124 积分:0 威望:0 精华:0 注册:2020/12/11 16:17:55
  发帖心情 Post By:2020/12/20 16:26:00 [只看该作者]

表头就是优化参数后,出现有MAR比率的那个列表的那一横排表头。我发了截图 不知为何发不出来,你们知道我说的是哪里吧?
[此贴子已经被作者于2020/12/20 16:27:38编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
banzhuan
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2020/12/21 9:24:56 [只看该作者]

1、先在策略中定义总风收比的变量;
2、优化中选择显示列中选自定义项,添加上述的变量试试

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
Tiffany1
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:124 积分:0 威望:0 精华:0 注册:2020/12/11 16:17:55
回复:(banzhuan)1、先在策略中定义总风收比的变量;...  发帖心情 Post By:2020/12/21 13:50:44 [只看该作者]

汗 在策略中定义总风收比这个变量,我不会啊。。。如何定义?需要胜率,平均每把盈利百分比,平均每把亏损百分比,这三个函数软件有吗?

 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/12/21 14:34:54 [只看该作者]

稍微有点麻烦。需要你自己会改代码才行。

参考下面范例:

VARIABLE:yl:=1,ks:=1;//用全局变量实现有效累乘。

input:n(9,1,100,10),p1(3,2,40,4),p2(3,2,40,4);//参数设置
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,P1,1);
D:SMA(K,P2,1);
J:3*K-2*D,NODRAW;

手数:=1;
//交易条件
kdjjc:cross(k,d),NODRAW;//kdj金叉
kdjsc:cross(d,k),NODRAW;

if kdjjc and holding<0 then
begin
平空:SELLSHORT(kdjjc,HOLDING,MARKET);
if NUMPROFIT(1)<0 then ks:=ks*(1/(1-abs(NUMPROFITPER(1)/100)));
if NUMPROFIT(1)>0 then yl:=yl*((1+abs(NUMPROFITPER(1)/100)));
end

开多:BUY(kdjjc and holding=0,手数,MARKET);

if kdjsc and holding>0 then
begin
平多:SELL(kdjsc,HOLDING,MARKET);
if NUMPROFIT(1)<0 then ks:=ks*(1/(1-abs(NUMPROFITPER(1)/100)));
if NUMPROFIT(1)>0 then yl:=yl*((1+abs(NUMPROFITPER(1)/100)));
end

开空:BUYSHORT(kdjsc and holding=0,手数,MARKET);

showyl:yl;//盈利
showks:ks;//亏损

result:LOG(showyl)/LOG(ks);//最终结果

你需要在每个平仓地方,判断下盈亏 然后计算。部分平仓是不行的。必须是完全平仓。否则无法获取盈亏的数值。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
Tiffany1
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:124 积分:0 威望:0 精华:0 注册:2020/12/11 16:17:55
回复:(FireScript)稍微有点麻烦。需要你自己会改代...  发帖心情 Post By:2020/12/21 15:32:02 [只看该作者]

      多谢。不过 额 是有点复杂 我算了,还是你们专业人士来行了。不过这个总风收比指标很重要啊,它是综合胜率和盈亏比得到的最终的指标。
      单看胜率高,我可以盈亏比很低,最后还是很微弱的正期望系统。单看盈亏比高,我又可以胜率很低,最后还是很微弱的正期望系统。只有综合两个才能看出来正期望系统的正期望数值到底多大。
      如果有空,希望以后把这个总风收比指标加入软件吧。谢谢。

 回到顶部