Very simple, just for learn. Code is best annotation.
Iceberg memesan membeli, membahagikan pesanan menjadi pembelian kecil M, untuk mengelakkan kejutan pasaran, adalah strategi pembelajaran yang baik untuk memulakan perdagangan kuantitatif bitcoin yang mudah.
function main(){
var initAccount = _C(exchange.GetAccount)
while(true){
var account = _C(exchange.GetAccount)
var dealAmount = account.Stocks - initAccount.Stocks
var ticker = _C(exchange.GetTicker)
if(BUYAMOUNT - dealAmount > BUYSIZE){
var id = exchange.Buy(ticker.Sell, BUYSIZE)
Sleep(INTERVAL*1000)
if(id){
exchange.CancelOrder(id) // May cause error log when the order is completed, which is all right.
}else{
throw 'buy error'
}
}else{
account = _C(exchange.GetAccount)
var avgCost = (initAccount.Balance - account.Balance)/(account.Stocks - initAccount.Stocks)
Log('Iceberg order to buy is done, avg cost is ', avgCost) // including fee cost
return
}
}
}