范例1:取上证50成份股在指定时间段内的基本行情数据
begt:=20190501T;
endt:=20190513T;
IndexID:='SH000016';
setsysparam(pn_stock(),IndexID);
setsysparam(pn_cycle(),cy_day());
Tarr:=StockTradeDayQk(begt,endt);//日线交易日序列
re:=array();
setsysparam(pn_cycle(),cy_60m()); //行情周期
for i:=0 to length(Tarr)-1 do
begin
vEndt:=Tarr[i];
sArr:=getbkbydate(IndexID,vEndt);
re&=select ['StockID'],['StockName'],datetimetostr(['date']) as 'date',
['close'],['vol'],['amount'] from markettable datekey vEndt to vEndt+0.99
of sArr end;
end;
return re;
范例2:取上证50成份股在指定时间段内的收盘价、涨幅等
begt:=20190401T;
endt:=20190513T;
IndexID:='SH000016';
setsysparam(pn_stock(),IndexID);
setsysparam(pn_cycle(),cy_day());
Tarr:=StockTradeDayQk(begt,endt);
re:=array();
k:=0;
for i:=0 to length(Tarr)-1 do
begin
vEndt:=Tarr[i];
sEndt:=datetostr(vEndt);
setsysparam(pn_date(),vEndt);
sArr:=getbkbydate(IndexID,vEndt);
for j:=0 to length(sArr)-1 do
begin
setsysparam(pn_stock(),sArr[j]);
re[k,'StockID']:=sArr[j] ;
re[k,'Date']:=sEndt;
re[k,'是否交易']:=istradeday(vEndt);
re[k,'价格']:=close();
re[k,'涨幅(%)']:=stockzf3();
re[k,'PE']:=stockpe(vEndt);
k++;
end
end
return re;