• 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());   #  对比初始账户信息

    返回

  • 相关阅读:
    DataGird导出EXCEL的几个方法
    csv文件与DataTable互相导入处理
    LeetCode 345
    LeetCode 168
    LeetCode 344
    LeetCode 342
    LeetCode 343
    LeetCode 326
    LeetCode 338
    LeetCode 319
  • 原文地址:https://www.cnblogs.com/bitquant/p/7209751.html
Copyright © 2020-2023  润新知