Mengambil posisi membeli atau menjual adalah cara pengiriman yang lambat, dengan dampak yang lebih kecil pada pasar. Strategi ini juga memiliki beberapa perbaikan, yang dapat diubah secara manual dengan volume transaksi minimum atau presisi. Saya tidak tahu apa yang terjadi.https://www.fmz.com/strategy/191582Dijual:https://www.fmz.com/strategy/191730
Plugin ini dapat diluncurkan dengan satu tombol di terminal transaksi, tanpa biaya, dan memudahkan transaksi manual.https://www.fmz.com/digest-topic/5051
function GetPrecision(){ var precision = {price:0, amount:0} var depth = exchange.GetDepth() for(var i=0;i<depth.Asks.length;i++){ var amountPrecision = depth.Asks[i].Amount.toString().indexOf('.') > -1 ? depth.Asks[i].Amount.toString().split('.')[1].length : 0 precision.amount = Math.max(precision.amount,amountPrecision) var pricePrecision = depth.Asks[i].Price.toString().indexOf('.') > -1 ? depth.Asks[i].Price.toString().split('.')[1].length : 0 precision.price = Math.max(precision.price,pricePrecision) } return precision } function main(){ var initAccount = exchange.GetAccount() if(!initAccount){return '无法获取账户信息'} var precision = GetPrecision() var sellPrice = 0 var lastId = 0 var done = false while(true){ var account = _C(exchange.GetAccount) var dealAmount = - account.Stocks + initAccount.Stocks var ticker = _C(exchange.GetTicker) if(SellAmount - dealAmount > 1/Math.pow(10,precision.amount) && ticker.Sell < sellPrice){ if(lastId){exchange.CancelOrder(lastId)} var id = exchange.Sell(ticker.Sell, _N(SellAmount - dealAmount,precision.amount)) if(id){ lastId = id }else{ done = true } } if(BuyAmount - dealAmount <= 1/Math.pow(10,precision.amount)){done = true} if(done){ var avgCost = (-initAccount.Balance + account.Balance)/dealAmount return 'order is done, avg cost is ' + avgCost // including fee cost } Sleep(Intervel*1000) } }