【MultiCharts(MC)程序化(量化)网上培训学习系列】第354节:资金管理系列之六:将资金管理策略做成公式并在信号策略中调用量化策略程式码、进行展示效果及测试
- UID
- 2
- 积分
- 2892307
- 威望
- 1396185 布
- 龙e币
- 1496122 刀
- 在线时间
- 13313 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
【MultiCharts(MC)程序化(量化)网上培训学习系列】第354节:资金管理系列之六:将资金管理策略做成公式并在信号策略中调用量化策略程式码、进行展示效果及测试
论坛官方微信、群(期货热点、量化探讨、开户与绑定实盘)
|
|
|
|
|
|
- UID
- 2
- 积分
- 2892307
- 威望
- 1396185 布
- 龙e币
- 1496122 刀
- 在线时间
- 13313 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
范例策略程式码: 本帖隐藏的内容需要回复才可以浏览
资金管理公式程式码:
本帖隐藏的内容需要回复才可以浏览
策略研究专题:本帖隐藏的内容需要回复才可以浏览 |
|
|
|
|
|
|
- UID
- 2
- 积分
- 2892307
- 威望
- 1396185 布
- 龙e币
- 1496122 刀
- 在线时间
- 13313 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
|
|
|
|
|
|
- UID
- 2
- 积分
- 2892307
- 威望
- 1396185 布
- 龙e币
- 1496122 刀
- 在线时间
- 13313 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
简评:
1、一个资金管理的范例。
2、以一个10万的户,做螺纹为例,每次交易手数在现有默认的策略中有1000多手,这是不合适的。我在白天优化一下原策略中的参数。 |
|
|
|
|
|
|
- UID
- 2
- 积分
- 2892307
- 威望
- 1396185 布
- 龙e币
- 1496122 刀
- 在线时间
- 13313 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
对资金管理公式进行优化:- if riskmodel = 1 and Close > 0 then riskshares = maxlist(minimumshares,100*intportion(equity/(100*Close)));
复制代码 这一段的问题就是当equity与价格close*100相近时,取整可能只能取到0.
例子,初始资金10万,螺纹现在最新价格是3700元,那么100000 /(3700*100) = 100000/370000 = 0.27 ,取整就是0。这在资金管理上面是不行的。
改成这样就可以了:- if riskmodel = 1 and Close > 0 then riskshares = maxlist(minimumshares,intportion(equity/Close*BigPointValue ));
复制代码 equity/(Close*BigPointValue ) 这一块的意义就是价格*合约系数与初始本金的对比,产生交易数手。- if riskmodel = 3 and Volatility(length) > 0 then riskshares = maxlist(minimumshares,intportion(erp/volatility(length)));
复制代码 还有model = 3 时的也优化一下成这样的:
function:AcmeGetShares
本帖隐藏的内容需要回复才可以浏览 |
|
|
|
|
|
|
- UID
- 2
- 积分
- 2892307
- 威望
- 1396185 布
- 龙e币
- 1496122 刀
- 在线时间
- 13313 小时
- 注册时间
- 2009-12-3
- 最后登录
- 2024-12-25
|
上面的效果如下:
|
|
|
|
|
|
|
- UID
- 23183
- 积分
- 2232
- 威望
- 1116 布
- 龙e币
- 1116 刀
- 在线时间
- 60 小时
- 注册时间
- 2024-1-27
- 最后登录
- 2024-12-22
|
|
|
|
|
|
|
- UID
- 22411
- 积分
- 746
- 威望
- 373 布
- 龙e币
- 373 刀
- 在线时间
- 79 小时
- 注册时间
- 2022-4-9
- 最后登录
- 2024-8-26
|
|
|
|
|
|
|