[PEL] 复制代码
//获取可用数量
KY:TBUYHOLDINGEX('',STKLABEL,0);
//今仓数量
JC:TBUYHOLDINGEX('',STKLABEL,2)-TBUYHOLDING(0)-TBUYHOLDINGEX('',STKLABEL,3);
//读取配置标致,左平flag
flag1:GETINIFILE('D:\FLAG.INI','SETTING',STKLABEL&'_FLAG1');
SZZS_FLAG:GETINIFILE('D:\FLAG.INI','SETTING',STKLABEL&'SZZS_FLAG');
//合约间隔天数
if flag1>1 then begin
jgts:TRADINGDATEDIFF( flag1, DATE);
if jgts>=30 then flag1=0;
end
//上证指数间隔天数
if SZZS_FLAG>0 then begin
SZZS_JGTS:TRADINGDATEDIFF( SZZS_FLAG, DATE);
if SZZS_JGTS>=10 then SZZS_FLAG=0;
end
//根据可用买入股票数量
if DYNAINFO(207)>093000 and DYNAINFO(207)<093100 and KY>0 and JC=0 AND TISPRVREMAIN(1)=0 and flag1=0 and SZZS_FLAG=0 then BEGIN
TBUY(1,KY,mkt);
END
FD:(DYNAINFO(7)-TAVGENTERPRICE)/TAVGENTERPRICE*100;
if DYNAINFO(207)>093100 and DYNAINFO(207)<093200 and KY>0 and JC=KY and FD>=2 then BEGIN
TSELL(1,KY,mkt);
END
if DYNAINFO(207)>145500 and DYNAINFO(207)<145800 and KY>0 and JC=KY and FD<=2 then BEGIN
TSELL(1,KY,mkt);
END
IF FD<=-8 or flag1=1 then BEGIN
TSELL(KY>0,KY,mkt);
//当ZP_flag=1时,说明需要平昨天开的仓位
if flag1=1 then
WRITEINIFILE('D:\FLAG.INI','SETTING',STKLABEL&'_FLAG1',DATE);
else
WRITEINIFILE('D:\FLAG.INI','SETTING',STKLABEL,1);
END
SZZS_CLOSE:CALLSTOCK('SH000001',vtCLOSE,6,0);
SZZS_ZS:CALLSTOCK('SH000001',vtCLOSE,6,-1);
IF (SZZS_CLOSE-SZZS_ZS)/SZZS_ZS*100< -2.3 OR SZZS_FLAG=1 then BEGIN
TSELL(ky>0,KY,mkt);
//SZZS_FLAG1=1时,说明需要平昨天开的仓位
if SZZS_FLAG=1 then
WRITEINIFILE('D:\FLAG.INI','SETTING',STKLABEL&'SZZS_FLAG1',DATE);
else
WRITEINIFILE('D:\FLAG.INI','SETTING',STKLABEL&'SZZS_FLAG1',1);
END