一个后台策略在1分钟周期上同时监控12个品种,采用高频扫描,发现总是漏单,而且都是同样的品总会漏单,不漏单的品种总是不漏单,漏单的品种总是漏单,怎么回事?
[此贴子已经被作者于2010-10-25 11:00:11编辑过]
难道监控品种有限制?还是说需要收费才能监控更多的品种?
你说的这个问题,过于含糊,无法回答。
请参考 http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=332 问题13 的有关交易描述
此外,请参考 问题4 中后台自动交易的后台调试部份,仔细调试你的后台自动交易程序。
另外,我们再重申一句,后台自动交易绝对不是将BUY改做TBUY就可以安全无误进行工作了,需要很多的细节上的编写与调试技巧,绝对是不适合初级用户使用的!
[此贴子已经被作者于2010-10-25 11:06:15编辑过]
因为每个品种的参数不一样,所以策略中含有如下的代码,是不是这个影响了效率?有办法优化么?是否可以考虑加入break或goto语句?
还是说高频扫描不适合在1分钟周期上使用?在1分钟周期上使用固定间隔1秒是不是效果更好些?
n:=70;
s:=50;
w:=100;
r:=1;
if strcmp(marketlabel,'SQ')=0 then begin
p:=strleft(stklabel,2);
if strcmp(p,'ZN')=0 then begin
n:=62;
s:=40;
w:=80;
r:=1;
end;
if strcmp(p,'RU')=0 then begin
n:=65;
s:=55;
w:=70;
r:=1;
end;
if strcmp(p,'CU')=0 then begin
n:=75;
s:=30;
w:=60;
r:=1;
end;
if strcmp(p,'RB')=0 then begin
n:=64;
s:=40;
w:=55;
r:=1;
end;
if strcmp(p,'AL')=0 then begin
n:=80;
s:=20;
w:=100;
r:=1;
end;
if strcmp(p,'AU')=0 then begin
n:=68;
s:=65;
w:=70;
r:=1;
end;
if strcmp(p,'FU')=0 then begin
n:=70;
s:=25;
w:=30;
r:=1;
end;
end;
if strcmp(marketlabel,'ZQ')=0 then begin
p:=strleft(stklabel,2);
if strcmp(p,'SR')=0 then begin
n:=76;
s:=70;
w:=100;
r:=1;
end;
if strcmp(p,'TA')=0 then begin
n:=60;
s:=100;
w:=100;
r:=1;
end;
if strcmp(p,'CF')=0 then begin
n:=68;
s:=35;
w:=80;
r:=1;
end;
end;
if strcmp(marketlabel,'DQ')=0 then begin
p:=strleft(stklabel,1);
if strcmp(p,'Y')=0 then begin
n:=70;
s:=20;
w:=75;
r:=1;
end;
if strcmp(p,'L')=0 then begin
n:=66;
s:=30;
w:=50;
r:=1;
end;
end;
[此贴子已经被作者于2010-10-25 12:31:41编辑过]
这里问题,只能由你采取调试手段,具体分析到底是由于哪些原因导致。
[此贴子已经被作者于2010-10-25 13:13:56编辑过]
以下是引用admin在2010-10-25 13:13:48的发言:
这里问题,只能由你采取调试手段,具体分析到底是由于哪些原因导致。
[此贴子已经被作者于2010-10-25 13:13:56编辑过]
break语句在if里用可以么?就是当一个品种的参数设置完成了,就跳出整个if语句,向下执行。或者goto语句?