代码

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

返回

BotVS开发基础—2.2 下限价单 交易的更多相关文章

  1. BotVS开发基础—2.3 下市价单 交易

    代码 def main(): ticker = exchange.GetTicker(); Log("初始账户信息:", exchange.GetAccount()); # 用于对 ...

  2. BotVS开发基础—Python API

    代码 import json def main(): # python API列表 https://www.botvs.com/bbs-topic/443 #状态信息 LogStatus(" ...

  3. BotVS开发基础—2.4 获取订单、取消订单、获取未完成订单

    代码 RetryDelay = 1500; def CancelPendingOrders(exch, orderType): # 取消所有未完成的挂单, 参数1 交易所 参数2 类型 global ...

  4. BotVS开发基础—2.5 策略交互

    一.代码部分 isOpen = False; # 是否 开仓 price = 0; # 全局变量 价格 amount = 0; # 全局变量 下单量 def exec_command(command) ...

  5. BotVS开发基础—2.1 账户、行情、K线、深度

    代码 import json def main(): Log("账号信息:", exchange.GetAccount()); # Log("K 线数据:", ...

  6. BotVS开发基础—2.11 API绘制图表

    代码 import time chart = { '__isStock': True, # 标记是否为一般图表,有兴趣的可以改成 false 运行看看. 'tooltip': {'xDateForma ...

  7. BotVS开发基础—2.7 指标MACD

    代码 def main(): while true: records = _C(exchange.GetRecords); # 获取K线数据 ,默认为策略界面设置的K线周期, _C 是一个容错的内置函 ...

  8. BotVS开发基础—2.7 指标MA

    代码 #计算一小时 MA5均线 # 时间 2017-06-29 00:00:00 -2017-06-30 00:00:00 1小时 实盘级Tick # 平台 OCKCoin BTC def main( ...

  9. BotVS开发基础—2.5 绘制图表

    代码 import time import math def main(): chart = { # 用于初始化 图表的对象 'title': {'text': "line数值触发 plot ...

随机推荐

  1. 加减号改变input[type=number]的数值,基于[zepto.js]

    通过点击加减号可以更改input的数值,样式如下图: 具体的html代码如下: <div class="xh-lxx-cart-count1"> <span cl ...

  2. JavaScript中的函数:闭包,this,高阶函数

    一.函数基本理论 function compare(val1,val2){ return val1 - val2; }var result = compare(5,10); 1,函数的定义没什么意义, ...

  3. Java Swing intro

    Java Swing intro 如果有Android app开发经验,快速上手Swing不是问题.UI方面有相似的地方. 简单的几行代码就能抛出一个框框,记录一下操作过程 1.先显示一个框框 Era ...

  4. XRouter-像Retrofit一样使用阿里开源路由中间件

    XRouter 一种基于Arouter的使用封装方案,实现对ARouter的Retrofit式使用. ARouter是阿里巴巴开源的Android平台中对页面.服务提供路由功能的中间件,没用过的务必点 ...

  5. ES6解构赋值

    前面的话 我们经常定义许多对象和数组,然后有组织地从中提取相关的信息片段.在ES6中添加了可以简化这种任务的新特性:解构.解构是一种打破数据结构,将其拆分为更小部分的过程.本文将详细介绍ES6解构赋值 ...

  6. (转)Spring boot——logback.xml 配置详解(三)<appender>

    文章转载自:http://aub.iteye.com/blog/1101260,在此对作者的辛苦表示感谢! 1 appender <appender>是<configuration& ...

  7. Storm源码阅读之SpoutOutputCollector

    不得不说storm是一个特别棒的实时计算框架.为了对后文理解的方便,先说几个storm中的术语: Topology:拓扑图或者拓扑结构.在storm中它通过消息分组的分式连接Spout和Bolt节点定 ...

  8. wordpress设置“固定链接”后,页面404错误的解决方法

    Nginx 解决方案: 网上盛传的方法是: 在 /etc/nginx/nginx.conf文件的 loction / {} 中添加 if (-f $request_filename/index.htm ...

  9. 斜率优化dp

    转载自http://www.cnblogs.com/ka200812/archive/2012/08/03/2621345.html 我们知道,有些DP方程可以转化成DP[i]=f[j]+x[i]的形 ...

  10. python 一个包中的文件调用另外一个包文件 实例

    python不同文件夹中模块的引用调用顺序,被调用的模块中①有类的 模块.类().方法()   ②无类的:模块.方法() test包中testIm.py 调用 test1包中testIm1.py中的方 ...