A Blank Template for Crypto Strategy Developing

In [1]:
import xarray as xr
import numpy as np
import pandas as pd

import qnt.data    as qndata
import qnt.stats   as qnstats
import qnt.graph   as qngraph
import qnt.forward_looking as qnfl
In [2]:
data = qndata.load_cryptocurrency_data(min_date = "2013-05-01",
                    max_date = None,
                    dims     = ("time", "field", "asset"),
                    forward_order = True)

output = xr.ones_like(data.loc[:, "close", ['BTC']])
In [3]:
stat = qnstats.calc_stat(data, output, max_periods = len(data.time), slippage_factor=0.05)
display(stat.to_pandas().tail())
field equity relative_return volatility underwater max_drawdown sharpe_ratio mean_return bias instruments avg_turnover avg_holding_time
time
2024-04-18 20:00:00 570.618175 0.001185 0.839760 -0.137946 -0.846012 0.937859 0.787577 1.0 1.0 0.005972 NaN
2024-04-18 21:00:00 573.399615 0.004874 0.839757 -0.133744 -0.846012 0.938797 0.788361 1.0 1.0 0.005972 NaN
2024-04-18 22:00:00 570.672184 -0.004757 0.839754 -0.137864 -0.846012 0.937858 0.787570 1.0 1.0 0.005972 NaN
2024-04-18 23:00:00 572.751513 0.003644 0.839750 -0.134723 -0.846012 0.938558 0.788154 1.0 1.0 0.005972 NaN
2024-04-19 00:00:00 567.548690 -0.009084 0.839751 -0.142583 -0.846012 0.936767 0.786651 1.0 1.0 0.005972 3977.75
In [4]:
qnstats.print_correlation(output, data)
correlation check disabled

Ok. This strategy does not correlate with other strategies.
In [5]:
qndata.write_output(output)
write output: /root/fractions.nc.gz