zoukankan      html  css  js  c++  java
  • 数字货币做市技术——随机价格

    关键词:数字货币 交易所 做市 价格 对冲 空间

    作者:比特量化

    一、取随机数

    ticker如下

    {'bid': 0.0131, 'ask': 0.0139, 'last': 0.0134}

    使用Python3自带的随机数,

    random.uniform(x, y) 方法将随机生成一个实数,它在 [x,y] 范围内。
    price_quant = round(random.uniform(ticker['bid'], ticker['ask']))

    取值如下

    0.013129986458554987
    0.013560374857658363
    0.01369777925459942
    0.013783165049587678
    0.013895282774288966
    0.013270566637852447
    0.01349905426904132
    0.013599971576874823
    0.013235747582137573
    0.013416767768451226

    再加个精度设置

    price_quant = round(random.uniform(ticker['bid'], ticker['ask']), precision[symbol]["price"])

    返回如下

    0.0139
    0.0131
    0.0139
    0.0136
    0.0139
    0.0135
    0.0136
    0.0138
    0.0138
    0.0134
    0.0137
    0.0136
    0.0137
    0.0132
    0.0136
    0.0132
    0.0139
    0.0136
    0.0132
    0.0138

    二、四舍五入的问题

    由于四舍五入的问题,会有部分数字撞到盘口值上,这时需要再进一步偏移

    price_quant = round(random.uniform(ticker['bid'] + pow(10, -1*precision[symbol]["price"]), ticker['ask'] - pow(10, -1*precision[symbol]["price"])), precision[symbol]["price"]) # 比特量化

    返回如下

    0.0136
    0.0133
    0.0138
    0.0135
    0.0133
    0.0133
    0.0133
    0.0134
    0.0137
    0.0136
    0.0133
    0.0135
    0.0133
    0.0134
    0.0134
    0.0134
    0.0134
    0.0137
    0.0133
    0.0132

    得到所要的数据了。

    三、问题来了

    如果x小于y一个点位,即x<y,这个时候再进行一次偏移,那么x>y,

    而在python的定义中,

    返回浮点数 N,取值范围为如果 x<y 则 x <= N <= y,如果 y<x 则y <= N <= x。

    所以x和y在偏移之前,需要先手工判断点位距离多少。如果已经小于等于1,那么其实就已经没有空间来生成随机价格了,这个时候要么吃买单,要么吃卖单。可能导致亏损。

    这个时间要先进行一次交易空间判断

    if ((ticker['ask'] - ticker['bid']) / precision[symbol]["price"] <= 1):
        print("<1")
        SPACE = False
    else:
        print(">1")
        SPACE = True

    如果SPACE为False,那么可以暂停交易,或者以很少的交易量来进行交易,或者以低频率来进行交易。

  • 相关阅读:
    MySQL主从复制与主主复制
    Go语言mgo
    beego07----web博客
    mongo14-----group,aggregate,mapReduce
    mongo13----application set与分片结合
    mongo12---手动预先分片
    TCP/IP详解学习笔记(4)-ICMP协议,ping和Traceroute
    TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议
    TCP/IP详解学习笔记(2)-数据链路层
    TCP/IP详解学习笔记(1)-基本概念
  • 原文地址:https://www.cnblogs.com/bitquant/p/random-price.html
Copyright © 2011-2022 走看看