एमुलेट फीडबैक वातावरण
कृपया बताएं कि Exchange.GetAccount () के माध्यम से प्राप्त खाते की जानकारी के लिए, Balance की गणना कैसे की जाती है?
प्रारंभिक पूंजी 50000, 100 गुना लीवरेज, प्रारंभिक पूंजी 500%, गारंटी का अधिग्रहण सैद्धांतिक रूप से 5% होना चाहिए, उपलब्ध usdt प्रारंभिक पूंजी 95% होनी चाहिए, वास्तविक डेटा 3937 है
初始资金*开仓5倍 = 50000 * 5 = 250000 ,100杠杆,即保证金使用开仓规模的1/100 , 即2500。


function main() {
exchange.SetContractType("swap")
exchange.SetMarginLevel(100)
var acc = exchange.GetAccount()
Log(acc)
//下单
var t = exchange.GetTicker()
exchange.SetDirection("buy")
exchange.Buy(t.Sell + 1000, acc.Balance * 5 / t.Last)
Log(exchange.GetAccount())
}
Balance是当前可用保证金。偏差考虑资金费率因素。
'''backtest
start: 2021-09-25 00:00:00
end: 2021-10-25 23:59:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
'''
def main():
exchange.SetContractType("swap")
exchange.SetMarginLevel(100)
acc = exchange.GetAccount()
t = exchange.GetTicker()
exchange.SetDirection("buy")
exchange.Buy(t.Sell + 1000, acc.Balance * 5 / t.Last)
while True:
acc = exchange.GetAccount()
pos = exchange.GetPosition()
Log("Account.Balance: {}, Position.Profit: {}".format(acc.Balance, pos[0].Profit))
Sleep(3600000*8)
麻烦帮忙看看,我这代码是否有问题
class Trade():
def init(self):
exchange.SetContractType("swap")
exchange.SetMarginLevel(100)
def OnOrder(self):
acc = exchange.GetAccount()
t = exchange.GetTicker()
exchange.SetDirection("buy")
exchange.Buy(t.Sell + 1000, acc.Balance * 5 / t.Last)
Log(acc)
def main():
trade = Trade()
trade.OnOrder()
while True:
acc = exchange.GetAccount()
pos = exchange.GetPosition()
Log("Account.Balance: {}, Position.Profit: {}".format(acc.Balance, pos[0].Profit))
Sleep(3600000*8)
盈利越高,Balance数值怎么会越低
- 1
