查看: 1797|回复: 2
打印 上一主题 下一主题

[公式] Q_AskPrice函数调用后返回值错误的情况处理

[复制链接]
跳转到指定楼层
发表于 2012-8-3 19:03:44 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 错错熊 于 2012-8-3 19:06 编辑

Q_AskPriceQ_BidPrice函数返回值错误
示例代码:
Params  
         Stringsymbol1("SR301");
         Numeric TradeUnit(1);
Vars
         Numeric price1;      
Numeric price2;
Begin
price1 = Q_AskPrice(Symbol1);
princ2 = Q_BidPrice(Symbol1);
         Buy(TradeUnit, price1);
Sell(TradeUnit, princ2);   
End
问题说明:
以上代码在执行对当前SR301下单过程中,出现委托价位-100000000的提示,返回这个数据表示获取行情数据错误。
问题原因:
         1、函数中的合约的代码错误,比如应该是SR301,写成SR1301或者sr301
         2、该合约没有成交量或对应方向挂单。
         3、初次加载公式获取当前图表以外合约的数据,可能获取数据错误。
解决办法:
        1、当前使用版本:
          这种函数调用时,获取到的结果先加个判断,
          比如ifQ_askPrice(“SR301”)<=0  不做处理,或给出提示。
          确认Q_askPrice(“SR301”)> 0时,开始使用返回的正确值。
        2、下次升级版本后:         
          可以对所有获取价或量的函数增加判断过程,确认获取结果是不是InvalidNumeric,如果是,说明是无效值,
          此时不做处理,否则即是正确值,可以直接使用。





2
发表于 2013-5-13 14:25:20 | 只看该作者
好东西,楼主辛苦了!!!
1
发表于 2012-8-4 07:34:30 | 只看该作者
学习     
您需要登录后才可以回帖 登录 | 注册入住  

本版积分规则

易家网  ©2015-2023  郑州期米信息技术有限公司版权所有  豫公网安备 41010502005136号 豫ICP备16010300号