以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 这个程序能图表自动化交易了吗? (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=30166) |
-- 作者:yhl99414 -- 发布时间:2012/10/29 9:06:04 -- 这个程序能图表自动化交易了吗? variable: cs=0; M:=OPENMINUTES(time ); if long=1 then cs:=cs+1;
{平多} SELL(short=1 and holding>0 ,0 ,market ); {开多} BUY( long=1 and cs=1 ,手数 ,market ); |
-- 作者:jinzhe -- 发布时间:2012/10/29 9:08:29 -- 你好,此公式编译正常,图表显示也正常,至于能不能自动化交易,还是要看楼主自己的需求和选择 |
-- 作者:every -- 发布时间:2012/10/29 9:42:10 -- M:=OPENMINUTES(time );//用这个表达当日的K线数目----可替换成以下两句 M:=barstlast(date<>ref(date,1))+1;
cross(time,145859) 楼主用这个是想表达 时间大于等于145859 吗?这么写好象有些问题 如果楼主刚接触金字塔,推荐楼主看一下金字塔“帮助”菜单下的教程
楼主的这个程序已经写的很不错了,只是有的地方考虑的不全面
提供给楼主一个前30分钟的突破示例,跟楼主的雷同,仅供参考 30突破 //开盘后前三十分钟最高最低价突破 //一天交易一次 //适用于1分钟周期
variable: cs=0;//控制一天交易1次 M:=BARSLAST(DATE<>REF(DATE,1) )+1; //当日的K线数目 h30:=VALUEWHEN(TIME<=093000,HHV(HIGH,M)); l30:=VALUEWHEN(TIME<=093000,LLV(LOW,M));
//建立多头进场条件 long:=CLOSE>h30 AND TIME<145500 AND TIME>093000;
if long then begin sellshort(holding < 0, 0, market);//平空 buy(holding = 0, 1, market);//开多 cs:=1; end //建立空头进场条件 short:=CLOSE<l30 AND TIME<145500 AND TIME>093000;
if short then begin sell(holding > 0, 0, market );//平多 buyshort(holding = 0, 1, market );//开空 cs:=1; end
//收盘前2分钟平仓 if time >= 145800 then begin sell(holding > 0, 0, MARKET); sellshort(holding < 0, 0, MARKET); end
if time=closetime(0) cs:=0;//收盘时,对CS赋值为0,保证第2天满足条件时依然开仓一次 |
-- 作者:yoyoma_2008 -- 发布时间:2012/10/29 17:01:29 -- 这个策略逻辑还是有点问题吧,如果开了多仓后,价格落到 h30 下方怎么办呢 只有进场的条件,没有止损
|