以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  按比例开仓时的代码问题  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=146154)

--  作者:eiki009
--  发布时间:2017/1/8 14:32:45
--  按比例开仓时的代码问题
请问,
以下两段代码在实际执行时有什么区别?
=============第一种==================
buynum:=round(max(1,0.15*ASSET/(close*MULTIPLIER*0.1)));  //开仓手数
...
开空:BUYSHORT(1,buynum,LIMITR,Close);
...
开多:BUY(1,buynum,LIMITR,Close);

=============第二种==================
...
开空:BUYSHORT(1,15%,LIMITR,Close),PERTRADER;
...
开空:BUYSHORT(1,15%,LIMITR,Close),PERTRADER;

本意都是想开固定比例的仓位,但这两种语句,回测有差别(其他代码条件都未改动)?可否解释一下区别?


--  作者:jinzhe
--  发布时间:2017/1/9 9:14:51
--  

前面用虚拟资金,后面用实际资金,

在虚拟资金和实际资金有差别的情况下,基本不能下到同样的手数


--  作者:eiki009
--  发布时间:2017/1/9 14:02:43
--  
实际资金如果按剩余现金比率,换算后下单,该怎么写?PERTRADER这个参数只能填写固定值,不用用变量计算后替代?
--  作者:jinzhe
--  发布时间:2017/1/9 14:16:46
--  

nn:=5;

buy(1,n%,marketr),pertrader;

如果是变量的话,就这样用