buy(xxx,50%,xxx,xxx);
我知道这么写就是总资金开1半了, 但这个是百分比了。
然后我想写个止损 ,每手亏损多少就止损。
那么上面那个50% = 多少手,我怎么去求?
还是有点逻辑问题, 初始化怎么处理
因为用的简单粗暴,获取每月1日金额后 - 金额*持仓数目
问题初始持仓是0的话。。。。后面不交易了。
每月1日金额后 - 金额*持仓数目
这个是什么思路?
每月1日金额后 - 金额*持仓数目
这个是什么思路?
没测试50%时刻是可以实现代码
初始资金:=valuewhen(month<>ref(month,1),asset),NODRAW;
限额资金:asset>=初始资金-(MONEY*CW),NODRAW;
我只要在 开仓那里用 and 限额资金
现在用到了50%后。。。 由于限额计算必然放在开仓前面,每月第一次必然是0 也就是初始 CW=0了 简单就是 本来 500*10= 5000 现在就是 500*0=500 立马不仓了
开仓条件无关的
因为模式都是
if ref(开多,1) and 限额资金 then xxxxx
CW 默认是常数 input:CW(10,5,50,5); CW=仓位
其实我就是用了个笨办法, 每月1日求 资金线, 然后整个月都是 资金线减去 仓位*money (money=500)
我这算法本来没问题,因为仓位是常数, 但是当我开仓不用CW而是 50%时刻。 默认仓位是=0了,因为我用holding 才能取到。 条件就失效了因为变成
CW(0) * 500 = 500 了 所以开不来仓了。
我没想出怎么解决这个问题。
其实综合起来就是一句话,我限制了每手每个月亏损500块 。
限额资金:asset>=初始资金-(MONEY*CW),NODRAW;
这个是开仓条件之一,是吧?
然后没开仓的情况,holding=0,也就是cw=0了,对吧?最开始就是判断asset>=初始资金了是吧?但是在没开仓的情况下,asst>=初始资金是成立的啊,也会开仓的啊
确实应该成立,但图表就是不成立了, 发觉交易少了好几个。
限额资金 这布尔量等于0 了
但是查看亏损完全没超过 。。。想不通中