您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 文华赢智程序化交易(WH3)编程函数手册
赢智算法交易编程函数手册1/11整理By:番茄炒期货QQ643164928赢智(WH3)算法交易编程函数手册一、引用数据某合约当前价格。Price(Code)返回合约Code的当前价格,Code为某合约的合约代码例:VARprice;//定义一个变量priceprice=Price(m1009);//price的值为合约m1009的当前价格某合约当前均价。AvPrice(Code)返回合约Code的当前均价,Code为某合约的合约代码例:VARavprice;//定义一个变量avpriceavprice=AvPrice(m1009);//price的值为合约m1009的当前均价某合约当前最高价。High(Code)返回合约Code的当前最高价,Code为某合约的合约代码例:VARhigh;//定义一个变量highhigh=High(m1009);//high的值为合约m1009的当前最高价某合约当前最低价。Low(Code)返回合约Code的当前最低价,Code为某合约的合约代码例:VARlow;//定义一个变量lowlow=Low(m1009);//low的值为合约m1009的当前最低价某合约的买卖盘报价。Offers(Code,strContent)返回某合约的买卖盘报价Code为某合约的合约代码(字符串),strContent为所要取得内容,可选以下内容bid1~5,ask1~5,bidvol1~5,askvol1~5,分别表示买1-5卖1-5买1量-5量卖1量-5量。例:VARbid1;bid1=Offers(m1009,bid1);//bid1为豆粕1009的当前买1价某合约最小变动价位。MinPrice(Code)返回合约Code的最小变动价位,Code为某合约的合约代码例:VARminprice;//定义一个变量minpriceminprice=MinPrice(m1009);//minprice的值为合约m1009的最小变动价位某合约当前成交量。Volume(Code)返回合约Code的当前成交量,Code为某合约的合约代码例:VARvolume;//定义一个变量volumevolume=Volume(m1009);//volume的值为合约m1009的当前成交量赢智算法交易编程函数手册2/11整理By:番茄炒期货QQ643164928二、指令状态模型某合约多头持仓。F_BuyPosition()返回模型的多头持仓例:VARfmlBVol;fmlBVol=F_BuyPosition();//定义一个变量fmlBVol,fmlBVol为模型的多头持仓。模型某合约空头持仓。F_SellPosition()返回模型的空头持仓例:VARfMLSVol;fmlSVol=F_SellPosition();定义一个变量fmlSVol,fmlSVol为模型的空头持仓。模型某合约多头持仓成本价。F_BuyAvgPrice()返回模型多头持仓成本价例:VARprice;price=F_BuyAvgPrice();定义一个变量price,price的值为值为模型多头持仓成本价模型某合约空头持仓成本价。F_SellAvgPrice()返回模型空头持仓成本价例:VARprice;price=F_SellAvgPrice()定义一个变量price,price的值为模型空头持仓成本价取得当前模型的合约编码。F_DealCode()返回模型所加载K图表的合约的合约编码(字符串)例:VARDealCode;DealCode=F_DealCode();//变量DealCode的内容为模型当前合约的合约编码.取得当前模型的周期。F_Period()返回当前模型的周期(字符串)例:VARperiod;period=F_Period();//变量period的内容为当前模型所使用的周期.取已经初始化的多头持仓。F_InitBuyVol()返回模型初始化的多头持仓(整数).例:VARinitBuyVol;//定义一个变量记录初始多头持仓initBuyVol=F_InitBuyVol();//取出初始多头持仓赋值给initBuyVol赢智算法交易编程函数手册3/11整理By:番茄炒期货QQ643164928取已经初始化的空头持仓。F_InitSellVol返回模型初始化的空头持仓(整数).例:VARinitSellVol;//定义一个变量记录初始空头持仓initSellVol=F_InitSellVol();//取出初始空头持仓赋值给initSellVol刷新当前信号。F_FreshSig()取一个新信号(如果模型已经发出了多个信号,取最早发出的信号,信号消失也是一种信号)返回1表示取到新信号,返回0表示失败即已经没有新信号可取。取到新信号以后可以配合F_Sig,F_SigVol,F_SigValid,F_SigTime,F_SigPos使用例:IF(F_FreshSig())//如果取得了新的信号取当前的信号(BK|SK|BP|SP|BPK|SPK)。F_Sig()返回当前的信号是什么类型(BK|SK|BP|SP|BPK|SPK)例:IF(F_Sig()==BPK&&F_SigValid()==1)//如果信号是BPK且不是信号消失状态取当前信号发生时的价格。F_SigPrice()取当前的信号发生时刻的价格.例:IF(F_SigPrice()3500)//如果信号发生的价格大于3500取当前信号的手数。F_SigVol()取当前的信号的手数,如果当前信号是BPK(5),则返回5.例:IF(F_SigVol()==VarOpi)//如果信号的仓位等于变量VarOpi当前信号是发出的,还是消失的F_SigValid()返回模型信号存在两种类型之一(信号发出,信号消失),返回1表示信号发出,返回0表示信号消失。例:IF(F_Sig()==BPK&&F_SigValid()==1)//如果信号是BPK且不是信号消失状态当前信号的发出时间。F_SigTime()返回当前信号的发出时间(以总秒数表示),例:IF(SamePeriod(m1009,min10,LastOrderTime(),F_SigTime())//如果取得新信号的时间与上次交易的时间是同一个周期当前信号在模型中是第几个有指令的语句。F_SigPos()如果当前信号是模型中第5个含信号的语句发出的,返回5例:IF(F_SigPos()==5)//如果当前信号是第5行发出的赢智算法交易编程函数手册4/11整理By:番茄炒期货QQ643164928三、下单接口最后一次下单的时间。LastOrderTime()返回最后一次下单的时间,以总秒数表示例:IF(LastOrderTime()-CurrentTime()=300)如果距离上次下单时间超过5分钟查询合约所属交易所的状态。T_IsExchangeOpen(Code)返回合约Code所属的交易所的开闭盘状态,开盘返回1,闭盘返回0,查询失败返回-1。例:VARStatus;Status=T_IsExchangeOpen(m1009);//Status为合约m1009所属交易所当前的开闭盘状态。当Status为1时,说明该交易所开盘;当Status为0时,说明该交易所闭盘;当Status为-1时,说明当前查询失败。交易系统某合约多头持仓。T_BuyPosition(Code)返回交易系统中合约Code的多头持仓,Code为某合约的合约代码。例:VARBuyVol;BuyVol=T_BuyPosition(m1009);//BuyVol为交易系统中合约代码为m1009的合约的多头持仓。交易系统某合约多头持仓成本价。T_BuyAvgPrice(Code)返回交易系统合约Code的多头持仓成本价,Code为某合约合约代码。例:VARBuyPrice;BuyPrice=T_BuyAvgPrice(m1009);//定义一个变量BuyPrice,BuyPrice的值为交易系统合约m1009多头持仓成本价交易系统某合约的多头盈亏。T_BuyProfitLoss(code)返回交易系统合约code的多头盈亏例:VARBuyEarn;BuyEarn=T_BuyProfitLoss(m1009);//定义一个变量BuyEarn,BuyEarn的值为交易系统合约m1009的多头盈亏交易系统某合约空头持仓。T_SellPosition(Code)返回交易系统中合约Code的空头持仓,Code为某合约的合约代码。例:VARSellVol;SellVol=T_SellPosition(m1009);//SVol为交易系统中合约代码为m1009的合约的空头持仓。交易系统某合约空头持仓成本价。赢智算法交易编程函数手册5/11整理By:番茄炒期货QQ643164928T_SellAvgPrice(code)返回交易系统合约code的空头持仓成本价,code为某合约合约代码。例:VARSellPrice;SellPrice=T_SellAvgPrice(m1009);//定义一个变量SellPrice,SellPrice的值为交易系统合约m1009空头持仓成本价交易系统某合约的空头盈亏。T_SellProfitLoss(code)返回交易系统合约code的空头盈亏例:VARSellEarn;SellEarn=T_SellProfitLoss(m1009)定义一个变量SellEarn,SellEarn的值为交易系统合约m1009的空头盈亏发出委托。T_Deal(Code,bs,kp,vol,price),发出委托。Code(字符串):合约编码,bs(整数0,1):0买1卖,kp(整数0,1,2):0开1平2平今Vol(整数):下单手数,Price(整数或小数):下单价格,0为市价返回唯一委托标识OrderID(字符串)例:VARorderID=T_Deal(m1009,0,0,5,2900);发出委托:m1009买开5手限价2900可用资金。T_FreeMargin(Type),返回可用资金。Type(整数0,1)0期货1股票,返回可用资金数(小数)例:VARmargin;margin=T_FreeMargin(0);//返回当前期货帐户的可用资金数权益。T_Equity(Type),返回权益。Type(整数0,1)0期货1股票,返回权益(小数)例:VARmargin;margin=T_Equity(0);//返回当前期货帐户的权益数某品种最大可开仓手数。、T_MaxOpen(Code,margin,bs),某品种最大可开仓手数。Code(字符串):合约编码,margin(小数):保证金比例bs(整数0,1):0买1卖返回该品种在当前可用资金,当前价格下的可开仓手数(整数)例:VARvol;vol=T_MaxOpen(m1009,0.1,0);//变量vol为m1009的在保证金比例为0.1下的可开仓手数查询委托状态。T_OrderState(OrderID)根据委托唯一标识OrderID(字符串)查委托状态,返回值含义:-1查询赢智算法交易编程函数手册6/11整理By:番茄炒期货QQ643164928失败0挂单1成交2被撤单3部份成交4其它例:IF(T_OrderState(X)=0)如果委托X是挂单查询挂单数量。T_OpenOrder(Code,Type)返回未成交委托数量,Code:交易编码,Type:0所有方向;1买开;2卖平;3卖开;4买平例:IF(LastOrderTime()-CurrentTime=300&&T_OpenOrder(ru1009,1)0)T_OpenOrder(ru1009,1)//如果距离上次下单超过5分钟,且存在买开挂单,撤掉剩余买开委托合约X的未成交委托数量委托撤单。T_DeleteOrder(OrderID)根据委托唯一标识orderID(字符串)撤单,返回0撤单发出成功,返回其它失败例:IF(T_DeleteOrder(
本文标题:文华赢智程序化交易(WH3)编程函数手册
链接地址:https://www.777doc.com/doc-2431946 .html