model.py 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. import utils
  2. class BacktestFee:
  3. def __init__(self, msg=None):
  4. if msg == "v9":
  5. self.maker = -0.00001
  6. self.taker = 0.0002
  7. elif msg == "v0":
  8. self.maker = 0.0001
  9. self.taker = 0.0005
  10. else:
  11. self.maker = 0
  12. self.taker = 0
  13. class ExchangeInfo:
  14. def __init__(self) -> None:
  15. self.symbol = None
  16. self.tickSize = None
  17. self.stepSize = None
  18. self.multiplier = None
  19. class Order:
  20. def __init__(self):
  21. self.symbol = None
  22. self.order_id = None
  23. self.amount = None
  24. self.side = None
  25. self.price = None
  26. class Position():
  27. def __init__(self):
  28. self.longPos = 0
  29. self.shortPos = 0
  30. self.longAvg = 0
  31. self.shortAvg = 0
  32. class TraderMsg:
  33. def __init__(self):
  34. self.position = Position()
  35. self.cash = 0.0
  36. self.coin = 0.0
  37. self.orders = dict()
  38. self.ref_price = None
  39. self.market = []
  40. self.predict = 0.0
  41. class ClientParams:
  42. def __init__(self):
  43. self.name = None
  44. self.pair = None
  45. self.proxy = None
  46. self.access_key = None
  47. self.secret_key = None
  48. self.pass_key = None
  49. self.interval = None
  50. self.broker_id = None
  51. self.debug = None
  52. self.ip = 0
  53. class Config:
  54. def __init__(self):
  55. self.broker_id = None
  56. self.account_name = None
  57. self.access_key = None
  58. self.secret_key = None
  59. self.pass_key = None
  60. self.exchange = None
  61. self.pair = None
  62. self.debug = None
  63. self.open = None
  64. self.close = None
  65. self.server_port = None
  66. self.leverrate = None
  67. self.interval = 0.1
  68. self.close = None
  69. self.open = None
  70. self.refexchange = None
  71. self.refpair = None
  72. self.webhook = None
  73. self.used_pct = None
  74. self.place_order_limit = 0
  75. # self.proxy = "http://127.0.0.1:4780" # 仅在win下有效
  76. self.proxy = None # 仅在win下有效
  77. self.index = 0
  78. self.save = 0
  79. self.hold_coin = 0.0
  80. self.log = 0
  81. self.stoploss = 0.05
  82. self.gamma = 0.999
  83. self.grid = 1
  84. self.backtest = 0
  85. self.colo = 0
  86. self.fast = 1
  87. self.ip = 0