> FINAL PORTFOLIO = 19015.904019955597 USDT
> GROSS PROFIT = 9015.904020 USDT (90.16%)
> MARKET CHANGE = 396.71%
does this mean the bot went up 90% when the market went up 396%?
> FINAL PORTFOLIO = 19015.904019955597 USDT
> GROSS PROFIT = 9015.904020 USDT (90.16%)
> MARKET CHANGE = 396.71%
does this mean the bot went up 90% when the market went up 396%?
The strategy is a simple two moving averages strategy. It will capture less of the return in a very strong market but maybe protect you on the downside.
The results don’t look particular good though.
I'm not sure this is calculated properly since marketChange is `sum(last-first)/first` (ratio) then avgMarketChange is `ratio/num_samples*100`. That's... average percent change between each sample? Doesn't sound right. (unless I misunderstand what's referenced in candles)
Pretty mangled code. Weird to have to iterate over `avgPrice` to get pairs. This is calculating the average market change across all pairs for which `avgPrice` is tracked in this PaperWallet, whatever that means.
type PaperWallet struct {
sync.Mutex
ctx context.Context
baseCoin string
counter int64
takerFee float64
makerFee float64
initialValue float64
feeder Feeder
orders []model.Order
assets map[string]*assetInfo
avgPrice map[string]float64
lastCandle map[string]model.Candle
fistCandle map[string]model.Candle
}
[...]
func (p *PaperWallet) Summary() {
var (
[...]
marketChange float64
)
[...]
for pair, price := range p.avgPrice {
[...]
marketChange += (p.lastCandle[pair].Close - p.fistCandle[pair].Close) / p.fistCandle[pair].Close
[...]
}
avgMarketChange := marketChange / float64(len(p.avgPrice))
[...]
}
[0] https://www.google.com/search?q=fist+candle&tbm=isch