将来时

inquant的Python项目详细描述


--编码:utf-8--

从inquant导入*

类mystrategy(策略模板): “

def __init__(self,strategyID,logPath):
    """构造函数"""
    super(MyStrategy,self).__init__(strategyID,logPath)
    self.isfirst = 0

def OnTick(self, data):
    """Tick数据处理 注data参数一次只有一条tick数据"""
    self.WriteInfo('tick : {0} {1} {2}'.format(data.Symbol,data.LocalTime,data.Exchange))
    pass

def OnBar(self, data):
    """Bar数据处理 注data参数一次只有一条bar数据"""
    self.WriteInfo('bar : {0} {1} {2}'.format(data.Symbol,data.LocalTime,data.Exchange))

    resp10 = strategy.GetLastBar(data.Symbol,data.Exchange,data.BarType,5)

    if self.isfirst == 0:
        self.isfirst = 1
        resp4 = self.SendOrder(data.Symbol,data.Exchange,OrderSide.Sell,data.LastPx,1,OrderType.LMT,Offset.Close)
    pass

def OnOrderChanged(self,order):
    """成交回报处理"""
    self.WriteInfo('OrderChanged : {0} {1} {2}'.format(order.Symbol,order.Price,order.Exchange))
    pass

def TaskCallback(self):
    print(datetime.now().time())

如果name='main': #新建工程 策略=mystrategy('2-xk1211231243242314123534523453','/home/admin/logs/restory'30053;/')

strategy.SetMarketStatus(1)

ret = strategy.GetHisBar("rb1905",Exchange.SHFE,60 * 60,1000,20181015150000)

#创建定时任务
strategy.CreateScheduler(strategy.TaskCallback,[90000,161005])

contracts = strategy.GetFutContracts('rb',Exchange.SHFE,-1)
contracts = strategy.GetFutContracts('rb',Exchange.SHFE,0)
contracts = strategy.GetFutContracts('rb',Exchange.SHFE,1)
contracts = strategy.GetFutContracts('rb',Exchange.SHFE,2)
contracts = strategy.GetFutContracts('rb',Exchange.SHFE,3)

a1 = strategy.Subscribe(["rbM.SHFE.Tick.0", "rbM.SHFE.Bar.300"])

strategy.WriteInfo(u"开始启动策略...")
resp = strategy.Start()
if not resp:
    strategy.WriteError(u"策略启动失败!!")
    input(u"按任意键退出")
    sys.exit()
strategy.WriteInfo(u"策略启动成功")

resp4 = strategy.SendOrder('rb1905',Exchange.SHFE,OrderSide.Buy,0,1,OrderType.MKT,Offset.Open)
resp5 = strategy.CancelOrder('7ba0ab1c8319442299c835269f600f3f')

resp1 = strategy.GetAssetInfo()
resp2 = strategy.GetOrders()
resp3 = strategy.GetPositions()

resp6 = strategy.GetOrder('7ba0ab1c8319442299c835269f600f3f')
resp7 = strategy.GetOpenOrders()
resp8 = strategy.GetContract('rb1905',Exchange.SHFE)
resp9 = strategy.GetLastTick('rb1905',Exchange.SHFE,2)
resp10 = strategy.GetLastBar('rb1905',Exchange.SHFE,300,5)

input(u"策略执行中,按任意键退出...")

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Jboss LinkageError:加载程序约束冲突:解析重写的方法时   java Struts 1:如何使用表单bean设置<html:multibox/>值?   使用Fortify将字段设置为Null时的Java Null取消引用   用java对连接字符的图像进行分割   java无法使用Quarkus模拟,NullPointer异常,无法找到相关导入   html试图使iframe垫片与Java小程序上的CSS下拉菜单一起工作   java无法获取Base64。decodeBase64正常工作(Commons编解码器)   java为什么我不能通过点击打开jar文件?   java当用户第一次使用预先填充的sqlite数据库时,安卓应用程序如何添加新的列或表?   在tomcat中安装java GoDaddy SSL证书。。。没有与私钥匹配的证书   java试图实现一些伪代码、算法   java如何读取其他按钮id,避免所有转到第一个按钮   java使用单个   oop为什么Java Map不扩展集合?