Very simple, just for learn. Code is best annotation.
Купить заказ на ледниковых горках, разделяя заказы на небольшие покупки, чтобы избежать рыночных ударов, является хорошей стратегией для простого обучения количественному трейдингу в биткоине.
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
}
}
}