以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  一天总共两单。  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=166580)

--  作者:qq代人发帖
--  发布时间:2018/11/20 12:51:53
--  一天总共两单。
请教:我想在上午11点前,晚上11点前各买一单怎么设置?一天总共两单。

--  作者:FireScript
--  发布时间:2018/11/20 13:31:08
--  
是图表程序化下单还是其他方式下单?如果是手工自动可以看下条件单:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

如果是程序化下单:

VARIABLE:mark:=0;
其中buycond是你自己定义的开仓条件。你给的条件充其量算是时间和仓位现在,并没有明确开仓条件。下面是一个范例。
cond:(time>CLOSETIME(1) and time<=150000) or (time<=30000);

if cond and buycond and mark<2 then
begin
buy(1,1,market);
mark:=mark+1;
end

if time=CLOSETIME(0) then mark:=0;

--  作者:zerool
--  发布时间:2018/11/21 8:31:14
--  
这个指标好像会出现,如果晚上11点前出现了两个买入信号,则第二天早上的第一单就买不进去了的情况。我是要求上午只开一单,晚上也开一单,都是第一单。
--  作者:FireScript
--  发布时间:2018/11/21 8:57:33
--  
 那就用2个全局变量做控制即可。

VARIABLE:mark1:=0,mark2:=0;

cond1:(time>CLOSETIME(1) and time<=150000);
cond2:(time<=30000);
buycond:c>ma(c,2);//这是你自行定义的开仓条件,自行修改成你自己的下单条件即可。
if cond1 and buycond and mark1<1 then
begin
buy(1,1,market);
mark1:=mark1+1;
end

if cond2 and buycond and mark2<1 then
begin
buy(1,1,market);
mark2:=mark2+1;
end


if time=CLOSETIME(0) then begin  mark1:=0;mark2:=0;end