以文本方式查看主题

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

--  作者:一代天骄
--  发布时间:2018/11/13 13:28:40
--  开仓手数
出现信号时,分别对不同的品种下不同手数,比如出现信号对焦糖下一手,对螺纹钢下7手,这个要怎么实现?
--  作者:FireScript
--  发布时间:2018/11/13 13:38:00
--  
 只能在代码里面根据品种做判断了,然后给手数ss做赋值了。
例如:
if STKLABEL=\'RB00\' then ss:=1; else if STKLABEL=\'J00\' then ss:=7;
--  作者:一代天骄
--  发布时间:2018/11/13 14:11:18
--  
那如果测试的时候是三十几个品种,岂不要写很多个if语句?
--  作者:FireScript
--  发布时间:2018/11/13 14:19:25
--  
 你这个手数是怎么计算的?如果是按照资金的话,可以利用代码直接计算手数的。如果你是自己随意设置的数量,那只能像上面那样每个品种一一对应了。
--  作者:一代天骄
--  发布时间:2018/11/13 14:29:35
--  
我是想用固定保证金去全品种的测试,我股指和原油去掉不测试,留下流动性比较好的大概有30+个品种,其中就是焦炭一手的保证金比较高,大概28000一手,那么以这个为基准,那么开一手焦炭28000,开7手螺纹钢也差不多28000,其他品种开仓手数也是这么计算的?这个可以用函数表示吗?,另外,我想在策略里面写入当策略的回撤大于历史最大回撤的120%时停止交易,不允许开仓,另外一个条件是当资金曲线半年不创新高停止交易,这个函数怎么写?
--  作者:FireScript
--  发布时间:2018/11/13 14:50:20
--  
1.那可以这样算,以多头为例:
ss:Intpart(28000/(Close*Multiplier*TACCOUNT(41)));

多空头时候情况不一样
TACCOUNT(41)是多头保证金率
TACCOUNT(42)是空头保证金率

2. MAXDRAWDOWNPCT 最大回撤比函数。 你策略当前的回撤需要你自己去定义和计算下,这个要明确多少周期内才行。

3. 半年不创新高这个你只能通过这个函数 :NEWHBARS 去判断上次创新高的跨度是否在半年之内才行。
[此贴子已经被作者于2018/11/13 14:59:03编辑过]

--  作者:一代天骄
--  发布时间:2018/11/13 16:00:25
--  
空头和多头的保证金比例不是一样吗?怎么还要分多头和空头的保证金比例啊?
--  作者:FireScript
--  发布时间:2018/11/13 16:06:25
--  
基本都是一样的。这是交易所的规则,但的确是分空头多头的。