A_Buy返回false

Vars

   Global Integer sendCount(0);

Events

   OnBar(ArrayRef<Integer> indexs)

   {

       if(BarStatus == 2 && sendCount <= 2)

       {//发开仓单

           Array<Integer> orders;

           //指定账户指定合约开多头单

           Bool ret = A_Buy(Symbol, 1, Q_AskPrice, orders, "", "");

           //Bool ret = Buy(1, Q_AskPrice,0);

           Commentary("A_Buy:" + IIFString(ret, "True", "False") + "," + TextArray(orders));

           if(ret)

           {

               sendCount = sendCount + 1;

               Commentary("true");

               Bool ret = FileAppend("C:\\aaa.txt", "true"+Text(Close),True);

Print("FileAppend:" + IIFString(ret, "True", "False"));

           }Else

           {

            Commentary("false");

            Bool ret = FileAppend("C:\\aaa.txt", "false"+Text(Close),True);

           };

       }

       

       if(sendCount <= 2)

       {

          Print("-----------");

       }Else{Print("==========");};

       Commentary("sendCount"+Text(sendCount));

   }

以上代码在A_Buy一直返回false,后续的打印sendCount一直是0,但是实际上成交了3手,后续便没有继续发单,与sendCount <= 2又是一致的

Buy函数返回False求解
A_SendOrder例程返回false
A_SendOrderEx函数下单返回False
A_DeleteOrderEx A_SendOrderEx 统统返回false
A_SendOrderEx总是返回False
实时行情,A函数撤单成功,却返回false
实时撤单成功,却返回false
使用A_Buy/A_Sell/A_DeleteAccountOrder下模拟柜台股票单, 不管成功失败返回值都是False
buy返回false,怎么看失败原因呢
A函数发单成交但返回值为False

第一,a函数要执行成功需要两个条件,分别是在最新的实时bar上和必须启动自动交易

第二,实际成交了3手,你能100%确定是a函数发单的吗?按照你目前给的这些东西,无法确认

两点都能确认


我只能说,如果你都能确认,那就是bug了

请提交一份能复现这个问题的demo

问题里面的代码就是整个策略的代码了,本来就是在测试这个问题。新建策略单元,应用公式,开启自动运行策略就可以复现。版本v1.1.4.6

那明天盘中测试一下看看。