以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  金字塔软件问题提交  (http://222.73.7.161/bbs/list.asp?boardid=2)
----  锌早盘10点前的高低点  (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=148852)

--  作者:惊弓之鸟
--  发布时间:2017/3/8 16:24:16
--  锌早盘10点前的高低点

老师好,
1.锌早盘10点前的高低点如何表达?
我用下面的公式表达 发现他是按凌晨1点为起点 来计算10点前的高低点的(因为锌夜盘时间长 延续到凌晨2点)
n:VALUEWHEN(time=100000,TODAYBAR);

hh:ref(hhv(h,n),todaybar-n);
ll:ref(llv(l,n),todaybar-n);
我实际只需要早盘9点开盘到10点这段时间的高低点。
该如何正确表达?

2.我是图标程序化(标准版),能实现在1根5分钟K线内完成 开仓 ,止盈or止损 动作吗?

谢谢!


--  作者:惊弓之鸟
--  发布时间:2017/3/8 16:28:43
--  
sorry!重新写下:
老师好,
1.锌早盘10点前的高低点如何表达?
我用下面的公式表达 发现他是按0(半夜12点)点为起点 来计算10点前的高低点的(因为锌夜盘时间长 延续到凌晨1点)
n:VALUEWHEN(time=100000,TODAYBAR);

hh:ref(hhv(h,n),todaybar-n);
ll:ref(llv(l,n),todaybar-n);
我实际只需要早盘9点开盘到10点这段时间的高低点。
该如何正确表达?

2.我是图标程序化(标准版),能实现在1根5分钟K线内完成 开仓 ,止盈or止损 动作吗?

谢谢!

--  作者:shq
--  发布时间:2017/3/8 16:51:46
--  
1、

//以金字塔时间编写,1h以内周期,沪锌品种

n:BARSLAST(time=050000);//夜盘收盘到现在的周期数
m:BARSLAST(time=140000);//10:00到现在的周期数

mn:n-m;

hh:ref(hhv(h,mn),m);
ll:ref(llv(l,mn),m);

2、可以的。条件分开写就可以。

[此贴子已经被作者于2017-3-8 17:05:39编辑过]

--  作者:惊弓之鸟
--  发布时间:2017/3/8 17:08:02
--  
谢谢!
我习惯用北京时间来表达
//以北京时间编写,9:30以前的高点是这样吗

n:BARSLAST(time=010000);//夜盘到现在的周期数
m:BARSLAST(time=093000);//09:30

mn:n-m;

hh:ref(hhv(h,mn),m);
ll:ref(llv(l,mn),m);

--  作者:shq
--  发布时间:2017/3/8 17:10:53
--  
是的,针对于沪锌品种没有问题。同时time返回的是周期函数,需注意在1h等大周期上需要重新编写。
--  作者:惊弓之鸟
--  发布时间:2017/3/8 17:48:01
--  
好的 
非常感谢

--  作者:惊弓之鸟
--  发布时间:2017/3/8 20:07:34
--  
老师好 
我又遇到了难题,还是以锌为例
 
开多条件:= H>=9点开盘至今的最高价  AND REF(MA5,1)>=REF(MA10,1) AND HOLDING<=0 AND A=0 AND 开仓时间(930以后);

9点开盘至今的最高价” 如何表达?
没有夜盘的品种是这样表达的 H>=REF(HHV(H,N),1)


--  作者:qq代人发帖
--  发布时间:2017/3/9 9:13:22
--  
n:BARSLAST(time=CLOSETIME(1));
--  作者:惊弓之鸟
--  发布时间:2017/3/9 12:00:58
--  
非常感谢图片点击可在新窗口打开查看
--  作者:惊弓之鸟
--  发布时间:2017/3/13 11:37:55
--  
老师好,
我想在一根K线上完成开平仓动作,代码编写后却没有讯号 ,请老师帮忙检测看下问题出在哪里?谢谢。

VARIABLE:A=0;
VARIABLE:B=0;
VARIABLE:CC=0;  //开仓次数限制


输出H:=(H-O)/O>0.006,COLORWHITE,LINETHICK0;
输出L:=(O-L)/O>0.006,COLORWHITE,LINETHICK0;


开仓时间:=TIME>=093000 AND TIME<=143000;


 //交易条件
开多条件:=L<=(O-L)/O>0.006 AND HOLDING<=0 AND A=0 AND CC<1 AND 开仓时间;
开空条件:=H>=(H-O)/O>0.006 AND HOLDING>=0 AND B=0 AND CC<1 AND 开仓时间;


止损平多条件1:=ENTERPRICE-L>=ENTERPRICE/200 AND HOLDING>0;   //百分比止损
止损平空条件1:=H-ENTERPRICE>=ENTERPRICE/200 AND HOLDING<0;



止盈平多条件2:=H-ENTERPRICE>=ENTERPRICE/200*2.5 AND HOLDING>0;
止盈平空条件2:=ENTERPRICE-L>=ENTERPRICE/200*2.5 AND HOLDING<0;


收盘平多条件:=TIME>=145800 AND HOLDING>0;
收盘平空条件:=TIME>=145800 AND HOLDING<0;


成本:ENTERPRICE,COLORWHITE,LINETHICK0;

多方止损:ENTERPRICE-ENTERPRICE/200,COLORRED,LINETHICK0;

多方止盈:ENTERPRICE+ENTERPRICE/200*2.5,COLORRED,LINETHICK0;

空方止损:ENTERPRICE+ENTERPRICE/200,COLORGREEN,LINETHICK0;

空方止盈:ENTERPRICE-ENTERPRICE/200*2.5,COLORGREEN,LINETHICK0;


//交易系统

SOS平空:SELLSHORT(止损平空条件1,1,LIMITR,空方止损);



IF 收盘平空条件 THEN BEGIN
收盘平空:SELLSHORT(1,1,MARKET);
END

IF 止盈平空条件2 THEN BEGIN
LF平空:SELLSHORT(1,1,LIMITR,空方止盈);
B:=1;
END

输出B:=B,COLORWHITE,LINETHICK0;


IF 开多条件 THEN BEGIN
开多:BUY(1,1,LIMITR,输出H);
CC:=CC+1;
END

SOS平多:SELL(止损平多条件1,1,LIMITR,多方止损);


IF 收盘平多条件 THEN BEGIN
收盘平多:SELL(1,1,MARKET);
END


IF 止盈平多条件2 THEN BEGIN
LF平多:SELL(1,1,LIMITR,多方止盈);
A:=1;
END

输出A:=A,COLORWHITE,LINETHICK0;

IF 开空条件 THEN BEGIN
开空:BUYSHORT(1,1,LIMITR,输出L);
CC:=CC+1;
END

输出CC:=CC,COLORWHITE,LINETHICK0;


IF TIME>=145800 THEN A:=0;
IF TIME>=145800 THEN B:=0;
IF TIME>=145800 THEN CC:=0;