我用动态行情数据,但是图表上不会显示开平仓,
如果我用数字N=N+1锁定开平仓
怎么写?
开多条件:cond1
平多cond2
是不是这样
n=0
IF COND1 and n=0 AND HOLDING=0 THEN
BEGING
BUY.......
N=N+1;
end
IF COND2 and n>0 then
beging
sell....
n=0
end
开空类似
由于是秒询,那么动态行情数据会不断出现 ,可能大于1,开空是不是用另一个字母M代替N
动态行情函数没有历史值,不能用于图表交易。你本质上是想用的n代替holding,其实holding是一样的效果。
因为历史k结果受动态函数的影响,无论是n还holding都会跟着动态行情的变化而变化
[此贴子已经被作者于2020/3/15 14:17:38编辑过]
因为图表的持仓与HOLDING同步的,当图表发出开平时,实持才会发出开平。
但图表是基本不会开平或不正确开平。
所以用N来控制开平,
买卖点引用了动态行情数据
CONDBUY:=S1<=buypoint;
CONDSELL:=S1>=sellpoint;
CONDBUYshort:=S2>=buyshortpoint;
CONDSELLshort:=S2<=sellshortpoint;
if CONDbuyshort and holding=0 and p=0 then
BEGIN
buyshort (1,1,market),ORDERQUEUE;
p=p+1;
end
if CONDsellshort and p>0 then
BEGIN
sellshort(1,0,MARKET),ORDERQUEUE;
p=0;
//buy(1,1,MARKET),ORDERQUEUE;
end
if CONDBUY and holding=0 AND Q=0 then
BEGIN
buy(1,1,MARKET),ORDERQUEUE;
q=q+1;
end
if CONDSELL and q>0 then
BEGIN
sell (1,0,MARKET),ORDERQUEUE;
q=0;
// buyshort (1,1,MARKET),ORDERQUEUE;
end
[此贴子已经被作者于2020/3/15 15:14:13编辑过]
以下是引用haizxj在2020/3/15 15:10:34的发言:
因为图表的持仓与HOLDING同步的,当图表发出开平时,实持才会发出开平。
但图表是基本不会开平或不正确开平。
所以用N来控制开平,
没用的。你的n和holding都在同一个层级。同样无法控制。
你图表策略中不能使用动态行情函数。你自己单独输出看下,它在每根k上都是最新的值,动态行情函数变化时全部都会变化。、历史条件根本没法控制。
所以图表策略每次计算你的所有的条件都会发生变化。
[此贴子已经被作者于2020/3/15 15:31:20编辑过]
无法解决,只有最新值没有历史值函数建议在后台中使用,不建议图表使用。
举例:你在软件里是看不到昨天前天的账户持仓情况和资金的,所以不能用在图表
如果用后台这样来,好像也不能解决
ZLDJ:=DYNAINFO2(28,ZL); //主力买价
ZLKJ:=DYNAINFO2(34,ZL); //主力卖价
ZLDL:=DYNAINFO2(25,ZL); //主力买量
ZLKL:=DYNAINFO2(31,ZL); //主力卖量