Satu perkataan untuk meringkaskan: apabila anda mencari harga transaksi pesanan di laman web wex.app, anda boleh menggunakan order.Info.detail[0].price untuk menggantikan order.AvgPrice yang biasa digunakan.
声明:写本文的目的仅是记录写代码过程中遇到的问题、学习的过程以及解决办法。感谢发明者平台提供了模拟盘wex.app,让我测试了很多策略。在交易方面,我还有很多不了解的内容,欢迎各位朋友指正。
本文使用发明者网站的调试工具,在模拟盘网站wex.app测试买入卖出的市价订单,并查询返回的订单信息。具体结果如下:
1. Uji Beli
(a) Kod ujian
fungsi utama (() {
var account = exchange.GetAccount ();
var preAccount = account;// merakam status akaun sebelum pembelian
Log (preAccount);
var id = exchange.Buy ((-1, 50);// Menghabiskan 50 USD untuk membeli BTC pada harga pasaran
Log (id);
if ((id!=null) {
var order = exchange.GetOrder ((id);
Log ((order);
account = exchange.GetAccount (();// Mencari status akaun selepas pembelian
Log ((account);
}
}
(ii) Mengembalikan maklumat
Sebelum membeli, maklumat akaun preAccount:
{C:$0000FF}
Selepas membeli, maklumat akaun anda:
♪
Apabila kita membandingkan data akaun sebelum dan selepas pembelian, kita dapat melihat: 1, baki akaun (Balance) dikurangkan sebanyak 50 USD. 2 BTC ditambah dengan 0.00175661 BTC.
Perintah order akan mengembalikan data seperti berikut:
♪
Dari maklumat pesanan yang dikembalikan oleh wex.app, kami mendapati: 1, pesanan telah selesai, status sama dengan 1. 2, Bilangan mata wang yang ditransfer adalah 0.00175661, sesuai dengan perubahan nilai sebelum dan selepas akaun. 3.Bertandingi maklumat pesanan sejarah di laman web wex.app, kami mendapati: Jumlah transaksi adalah Info.tx=49.9623272267 USD Harga purata transaksi ialah Info.detail[0].price=28442.47 Jumlah transaksi adalah Info.detail[0].amount=0.00175661 BTC Jumlah kos adalah Info.detail[0].fee=0.037471745420025 usdt
Nilai purata transaksi = jumlah urus niaga / jumlah urus niaga: 49.9623272267/0.00175661 ialah 28442.47 Kadar urus = jumlah urus / jumlah urus 0.037471745420025/49.9623272267 = 0.00075
Masalahnya, jika jumlah urus niaga dikurangkan daripada jumlah urus niaga, perbezaan adalah sedikit lebih besar daripada jumlah yuran: 50-49.9623272267 ialah 0.0376727733. 0.0376727733-0.037471745420025 = 0.0201028 Tidak tahu di mana kecacatan ini? Mungkin berkaitan dengan kaedah pengiraan yang diambil untuk pesanan. Kesalahan ini biasanya boleh diabaikan.
2. Ujian dan Jualan
(a) Kod ujian
fungsi main (() {
var account = exchange.GetAccount ();
var preAccount = account;// Mencatatkan status akaun sebelum dijual
Log (preAccount);
var id = exchange.Sell ((-1, 0.001);// menjual 0.001 BTC pada harga pasaran
Log (id);
if ((id!=null) {
var order = exchange.GetOrder (id);
Log ((order);
account = exchange.GetAccount (();// Mencari status akaun selepas dijual
Log ((account);
}
}
(ii) Mengembalikan maklumat
Sebelum membeli, maklumat akaun preAccount:
♪
Selepas membeli, maklumat akaun anda:
♪
Apabila kita membandingkan data akaun sebelum dan selepas pembelian, kita dapat melihat: 1, baki akaun (Balance) meningkat 28.37246468 usdt. 2, jumlah syiling (Stocks) berkurangan 0.001 BTC.
Perintah order akan mengembalikan data seperti berikut:
♪
Dari maklumat pesanan yang dikembalikan oleh wex.app, kami mendapati: 1, pesanan telah selesai, status sama dengan 1. 2, Bilangan mata wang yang ditukar adalah 0.001, sesuai dengan nilai perubahan sebelum dan selepas akaun. 3.Bertandingi maklumat pesanan sejarah di laman web wex.app, kami mendapati: Jumlah transaksi adalah Info.tx = 28.39376 USD Harga purata transaksi ialah Info.detail[0].price=28393.76 Jumlah transaksi adalah Info.detail[0].amount=0.001 BTC Jumlah kos adalah Info.detail[0].fee=0.021295325 usdt
Nilai purata transaksi = jumlah urus niaga / jumlah urus niaga: 28.39376/0.0011 ialah 28.393.76. Kadar urus niaga = jumlah urus niaga / jumlah urus niaga 0.021295325/28.39376 ialah 0.00075
Kita boleh mengira bayaran dari sudut lain, dengan mengurangkan jumlah transaksi dengan nilai perubahan baki akaun: 28.37246468-28.39376-= -0.02129532 Terdapat kesilapan yang sangat kecil, yang sepatutnya disebabkan oleh pemotongan nombor kecil tertentu, yang boleh diabaikan.