以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  求助:如何编写 10分钟内涨幅超过1%且空仓时开多仓  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=94559)

--  作者:amealll
--  发布时间:2016/3/9 18:40:27
--  求助:如何编写 10分钟内涨幅超过1%且空仓时开多仓
感激不尽
--  作者:wenarm
--  发布时间:2016/3/9 21:20:45
--  
你的涨幅需要怎么定义?涨幅=abs((开盘-收盘)/开盘)
类似下面的方式
cond:abs(open-close)/open)>0.01;
buy(holding=0 and cond,手数,MARKET);


[此贴子已经被作者于2016/3/9 21:21:02编辑过]

--  作者:amealll
--  发布时间:2016/3/9 21:50:48
--  
是指 只要在10分钟内(最高价-最低价)/最低价>1% 开多仓

比如当前价格100,3分钟后(满足10分钟内)涨到了101,并且没有仓位,就开多仓。


--  作者:amealll
--  发布时间:2016/3/9 21:55:46
--  
以下是引用wenarm在2016/3/9 21:20:45的发言:
你的涨幅需要怎么定义?涨幅=abs((开盘-收盘)/开盘)
类似下面的方式
cond:abs(open-close)/open)>0.01;
buy(holding=0 and cond,手数,MARKET);





是指 只要在10分钟内(最高价-最低价)/最低价>1% 开多仓
比如当前价格100,3分钟后(满足10分钟内)涨到了101,并且没有仓位,就开多仓。
[此贴子已经被作者于2016/3/9 21:56:46编辑过]

--  作者:wenarm
--  发布时间:2016/3/9 22:19:08
--  
cond:abs(high-low)/low)>0.01;
buy(holding=0 and cond,手数,MARKET);

--  作者:amealll
--  发布时间:2016/3/9 22:26:43
--  
以下是引用wenarm在2016/3/9 22:19:08的发言:
cond:abs(high-low)/low)>0.01;
buy(holding=0 and cond,手数,MARKET);

谢谢您的回答,但是这样如何限制在10分钟内完成才有效呢?
--  作者:amealll
--  发布时间:2016/3/9 22:30:24
--  
以下是引用wenarm在2016/3/9 22:19:08的发言:
cond:abs(high-low)/low)>0.01;
buy(holding=0 and cond,手数,MARKET);

如果是这样写的话,比如花了15分钟从100涨到101也会开仓,怎样才能把这个有效时间限制在10分钟内呢?
--  作者:wenarm
--  发布时间:2016/3/9 23:31:49
--  
首先你要先确定你的策略运行在什么周期上。
你可以使用跨周期引用10分钟周期中条件的结果作为你15分钟周期上的条件进行处理
公式111.
cond10:abs(high-low)/low)>0.01;
公式222
cond15:STKINDI(\'\',\'111.cond10\',0,18);
buy(holding=0 and cond15,手数,MARKET);