BotVS开发基础—2.2 下限价单 交易

代码

import json
def main():
    Log("ORDER_STATE_PENDING:", ORDER_STATE_PENDING, ", ORDER_STATE_CLOSED:",  
        ORDER_STATE_CLOSED, ", ORDER_STATE_CANCELED:", ORDER_STATE_CANCELED);
    ticker = exchange.GetTicker();               # 上一章 已经讲述了怎么获取行情信息。
    Log("初始账户信息:", exchange.GetAccount());      #  用于对比交易前后账户信息
    
    # Part 1 限价买入
    ID = exchange.Buy(ticker.Sell + 0.1, 1);   # ticker.Sell 即 上一章中的  depth.Asks[0].Price 。
    Sleep(1000); #暂停1秒  
    order = exchange.GetOrder(ID);               # 根据ID 获取 对应的 订单信息。
    Log("订单状态 ID:", ID, "order:", order);
    Log("当前账户信息:", exchange.GetAccount());       #  对比初始账户信息
    
    # Part 2 限价卖出
    ID = exchange.Sell(ticker.Sell + 0.3, 2); # 这里故意把卖出价格加了 0.3 ,并且使用的ticker.Sell,增加了未成交的几率。
    Sleep(1000); #暂停1秒  
    order = exchange.GetOrder(ID);             # 根据ID 获取 对应的 订单信息。
    Log("订单状态 ID:", ID, "order:", order);
    Log("当前账户信息:", exchange.GetAccount());   #  对比初始账户信息
    
    # part 3 订单挂起 未完成
    ID = exchange.Sell(ticker.Sell + 50, 2);  # ticker.Sell 即 上一章中的  depth.Asks[0].Price 。
    Sleep(1000);
    order = exchange.GetOrder(ID);  # 根据ID 获取 对应的 订单信息。
    Log("订单状态 ID:", ID, "order:", order);
    Log("当前账户信息:", exchange.GetAccount());   #  对比初始账户信息
    Sleep(10 * 1000);
    exchange.CancelOrder(ID);         #  取消 这个ID 的订单
    order = exchange.GetOrder(ID);    #  读取这个ID的订单信息。
    Log("订单状态 order:", order);
    Log("当前账户信息:", exchange.GetAccount());   #  对比初始账户信息

返回

原文地址:https://www.cnblogs.com/bitquant/p/7209751.html