一键平所有永续合约仓位
function main(){ exchange.SetContractType('swap') exchange.SetCurrency('BNB_USDT') Log(exchange.GetPosition()) acc = exchange.GetAccount() //Log(exchange.GetAccount().Info) var pos = exchange.GetAccount().Info.positions var positioned = false for(var i=0;i<pos.length;i++){ if (pos[i].positionAmt != 0){ positioned = true var symbol = pos[i].symbol.replace('USDT','_USDT') //var symbol = pos[i].symbol.replace('BUSD','_BUSD') exchange.SetCurrency(symbol) var amount = parseFloat(pos[i].positionAmt.replace('-','')) if(pos[i].positionSide == 'LONG'){ exchange.SetDirection('closebuy') exchange.Sell(-1, amount) } if(pos[i].positionSide == 'SHORT'){ exchange.SetDirection('closesell') exchange.Buy(-1, amount) } } } if(positioned == false){ Log('无持仓') return ('无持仓') } else{ Log('完成平仓') return ('完成平仓') } }
ChaoZhang 支持,希望可以更完善,比如考虑精度,比如超过最大交易量可以分批平,比如低于最小交易量可以加仓一部分,再执行平仓