viabtc / viabtc_exchange_server

A trading engine with high-speed performance and real-time notification
MIT License
2.68k stars 1.49k forks source link

Incorrect Market values (Value is 0) #216

Open monarkmodi opened 5 years ago

monarkmodi commented 5 years ago

Upon calling Market API (market.last, market.status etc), I am getting value as 0. I have placed many limit and market orders some of which got executed and some are still in orderbook yet the response I am getting is as follows:

{ "error": null, "result": "0", "id": 1 }

What looks wrong here? The result is 0 in all market calls. Any marketprice config change I need to make?

lawrence296 commented 5 years ago

What are your config.json for marketprice and matchengine? If you query redis, what do you get? Example "get k:ETHBTC:last" ? Do you see the executed orders stored in the database tables? Any errors in the log files? These are the things you can check.

monarkmodi commented 5 years ago

Hi, So I queried Redis and I am getting "0". For non-existent markets I am getting "nil". So basically value is still 0 there. Also I am able to see executed orders in the database.

As I'm using the docker setup, here are the config files: Matchengine { "debug": true, "process": { "file_limit": 1000000, "core_limit": 1000000000 }, "log": { "path": "/var/log/trade/matchengine", "flag": "fatal,error,warn,info,debug,trace", "num": 10 }, "alert": { "host": "matchengine", "addr": "127.0.0.1:4444" }, "svr": { "bind": [ "tcp@0.0.0.0:7316", "udp@0.0.0.0:7316" ], "buf_limit": 100, "max_pkg_size": 10240, "heartbeat_check": false }, "cli": "tcp@127.0.0.1:7317", "db_log": { "host": "db", "user": "root", "pass": "root", "name": "trade_log" }, "db_history": { "host": "db", "user": "root", "pass": "root", "name": "trade_history" }, "assets": [ { "name": "BTC", "prec_save": 12, "prec_show": 8 }, { "name": "ETH", "prec_save": 12, "prec_show": 8 }, { "name": "LTC", "prec_save": 12, "prec_show": 8 }, { "name": "XRP", "prec_save": 12, "prec_show": 8 }, { "name": "BCH", "prec_save": 12, "prec_show": 8 }, { "name": "AED", "prec_save": 20, "prec_show": 8 } ], "markets": [ { "name": "BTCAED", "stock": { "name": "BTC", "prec": 8 }, "money": { "name": "AED", "prec": 0 }, "min_amount": "0.0001" }, { "name": "ETHAED", "stock": { "name": "ETH", "prec": 8 }, "money": { "name": "AED", "prec": 0 }, "min_amount": "0.0001" }, { "name": "LTCAED", "stock": { "name": "LTC", "prec": 8 }, "money": { "name": "AED", "prec": 8 }, "min_amount": "0.0001" }, { "name": "XRPAED", "stock": { "name": "XRP", "prec": 8 }, "money": { "name": "AED", "prec": 8 }, "min_amount": "0.0001" }, { "name": "BCHAED", "stock": { "name": "BCH", "prec": 8 }, "money": { "name": "AED", "prec": 8 }, "min_amount": "0.0001" } ], "brokers": "mq:9092", "slice_interval": 3600, "slice_keeptime": 259200 }

MarketPrice config: { "debug": true, "process": { "file_limit": 1000000, "core_limit": 1000000000 }, "log": { "path": "/var/log/trade/marketprice", "flag": "fatal,error,warn,info,debug,trace", "num": 10 }, "alert": { "host": "marketprice", "addr": "127.0.0.1:4444" }, "svr": { "bind": [ "tcp@0.0.0.0:7416", "udp@0.0.0.0:7416" ], "buf_limit": 100, "max_pkg_size": 1000000, "heartbeat_check": false }, "deals": { "brokers": "mq:9092", "topic": "deals", "partition": 0 }, "redis": { "name": "mymaster", "addr": [ "redis_sentinel:26379" ] }, "accesshttp": "http://127.0.0.1:8080" }

Unable to see any errors but one thing I notice is that when I call market.last http call, there's not trace_log on the terminal. Usually there is with matchengine requests!

monarkmodi commented 4 years ago

Any update?

pp5ee commented 4 years ago

I met the same problem too,have you solved it yet?

monarkmodi commented 4 years ago

Nope! No solution yet

vast-z commented 4 years ago

oh i met the same problem, why this problem.

vast-z commented 4 years ago

I find this problem. in marketprice 26-- the author write , should be