以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 策略编写求助区 (http://222.73.7.161/bbs/list.asp?boardid=11) ---- 求助阿火版主帮写个日内系统 (http://222.73.7.161/bbs/dispbbs.asp?boardid=11&id=8840) |
-- 作者:weizzc -- 发布时间:2011/11/6 18:47:34 -- 求助阿火版主帮写个日内系统 条件如下: 1,9点35分后才开仓,当价格高于前面30根的最高价时开多单,开仓后如果创出当日新高则持有到价格低于前30根最低价;开仓后不创新高,则持仓到价格跌破当日最低点;平仓后马上反手;反手后平仓条件一样; 4,1分钟周期就可 谢谢版主好人一个,找时间请你吃饭喝酒泡MM |
-- 作者:tonybig -- 发布时间:2011/11/7 9:55:54 -- 不知道对否 ,可参考一下我写的
exittime:=time>=025800; n:=barslast(date<>ref(date,1)); dayhigh:=ref(hhv(h,n),1); daylow:=ref(llv(l,n),1); h30:=ref(hhv(h,30),1); l30:=ref(llv(l,30),1);
if time>093500 and h>=h30 then buy(holding=0,1,market); if time>093500 and l<=l30 then buyshort(holding=0,1,market); if holding>0 then begin if enterprice>dayhigh and close<=l30 or enterprice<daylow then sell(1,holding,market); if enterprice<daylow then buyshort(1,1,market); end;
if holding<0 then begin if enterprice<daylow and close>=h30 or enterprice>dayhigh then sellshort(1,holding,market); if enterprice<dayhigh then buy(1,1,market); end
if time>=145800 and time<=150000 then begin sellshort(holding<0,0,close); [此贴子已经被作者于2011-11-7 10:05:32编辑过]
|
-- 作者:tonybig -- 发布时间:2011/11/7 10:01:44 -- 不知哪里有问题,还是很多白色错误信号 |
-- 作者:jinzhe -- 发布时间:2011/11/7 10:13:53 -- 我来试试 |
-- 作者:tonybig -- 发布时间:2011/11/7 10:29:13 -- jinzhe 哥,您帮我修改的我实在是找不出问题,但是就是不能用, 请您再看下 http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=8786 [此贴子已经被作者于2011-11-7 10:29:44编辑过]
|
-- 作者:weizzc -- 发布时间:2011/11/7 10:59:32 -- tonybig哥 你帮我写的问题怎么那么多啊 还有白点 不过还是谢谢你了,赞一个 |
-- 作者:阿火 -- 发布时间:2011/11/7 11:50:48 -- 汗。今天忙 上面的的第一句不能这样用,会导致hhv(h,nn)出错 其他部分不符合逻辑,是开仓后最高价触及日内最高点,才把离场位置为30周期低点,否则,是以日内最低点离场并反手
晚点写
|
-- 作者:阿火 -- 发布时间:2011/11/7 14:39:14 -- variable:hl=0; if holding>0 and (l<lo or (l<lo30 and hl<0)) then begin//hl<0代表的开仓后的最高价达到日内最高点 if holding<0 and (h>hi or (h>hi30 and hl<0)) then begin if holding=0 and entertime and h>hi30 then begin if holding=0 and entertime and l<lo30 then begin if time>=145800 then begin [此贴子已经被作者于2011-11-7 16:26:02编辑过]
|
-- 作者:tonybig -- 发布时间:2011/11/7 16:58:27 -- if holding>0 and h>=abs(hl) then begin//因为用了hl的正负号来记录信息,所以需用abs(hl)
这两句话不是太理解, 为什么要变成-hl, 则把hl赋值为负值 [此贴子已经被作者于2011-11-7 16:59:51编辑过]
|
-- 作者:fly -- 发布时间:2011/11/7 17:13:04 -- 只是为了用一个全局变量既:记录新高, 又标识:开仓后是否创出当日新高 |