以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  下单量总是100,下单价格总是市价,而不是我设定的限价和手数。  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=182271)

--  作者:qq代人发帖
--  发布时间:2020/9/21 11:02:10
--  下单量总是100,下单价格总是市价,而不是我设定的限价和手数。
请教,我对公式做回测和模拟交易时,下单量总是100,下单价格总是市价,而不是我设定的限价和手数,请问这是什么原因造成的?
--  作者:banzhuan
--  发布时间:2020/9/21 11:04:51
--  
下单数量及下单价格都是通过代码指定的,贴下您下单代码如何编写的呢?

开仓函数用法:
BUY(COND,V,Type,P);表示当COND条件成立时,
买入V股(手)当前品种,TYPE表示买入类型,P表示买入价格,所有参数均可以省略。V:买入股(手)数或买入资金百分比(V%),若为0或者省略表示100%,若使用实际资金百分比买入请参考PERTRADER函数;TYPE:可以是本周期收盘:THISCLOSE(本周期入场),市价:MARKET(次周期开盘价入场),
限价单:LIMITR(本周期入场),停损单:STOP(次周期入场)等交易方式控制符;P:对于限价单、停损单需要指定的买入价格

例如:BUY(C>O ,1000,THISCLOSE);表示收阳线则在本周期收盘价上买入1000股(手)。
BUY(C>0,50%,LIMITR,CLOSE-0.2);表示在指定限价CLOSE-0.2元位置下买入限价单,
若价格达到或低于该价格则用50%资金买入。
[此贴子已经被作者于2020/9/21 11:12:14编辑过]

--  作者:popypopy
--  发布时间:2020/9/21 11:35:21
--  
代码是这样写的:

买入价1:=60MA5*60MA5rate;
if buycondi=4 and  持仓=0 then begin
 建仓手数:=intpart(单股上限*首仓比例/买入价1/10000);
end
if buycondi>0 and 买入价1>0 and 建仓手数>0 then begin
 MSGOUT(1,STKNAME()&\'buycondi: \'&NUMTOSTR(buycondi,0)&\' 买入价1: \'&NUMTOSTR(买入价1,2)&\' 买入价2: \'&NUMTOSTR(买入价2,2)&\' 建仓手数: \'&NUMTOSTR(建仓手数,0));
end
//交易系统
buy(buycondi>0 and 买入价1>0 and 建仓手数>0,建仓手数,LIMITR,买入价1);

我msgout的内容也是和我设计的公式是一致的,例如:
2020/09/21 10:08:37  爱柯迪buycondi: 4 买入价1: 14.64 买入价2: 0.00 建仓手数: 34

但模拟交易成交却是按市价成交的,而且是固定的100股