Overall Statistics
Total Orders
0
Average Win
0%
Average Loss
0%
Compounding Annual Return
0%
Drawdown
0%
Expectancy
0
Start Equity
100000
End Equity
100000
Net Profit
0%
Sharpe Ratio
0
Sortino Ratio
0
Probabilistic Sharpe Ratio
0%
Loss Rate
0%
Win Rate
0%
Profit-Loss Ratio
0
Alpha
0
Beta
0
Annual Standard Deviation
0
Annual Variance
0
Information Ratio
-0.688
Tracking Error
0.143
Treynor Ratio
0
Total Fees
$0.00
Estimated Strategy Capacity
$0
Lowest Capacity Asset
Portfolio Turnover
0%
# region imports
from AlgorithmImports import *
# endregion

class LargeCapCryptoUniverseAlgorithm(QCAlgorithm):

    def initialize(self):
        self.set_start_date(2014, 1, 1)
        self.set_cash(100000)
        self._market = Market.COINBASE
        self._market_pairs = [x.key.symbol for x in self.symbol_properties_database.get_symbol_properties_list(self._market) if x.value.quote_currency == self.account_currency]
        self._universe = self.add_universe(CoinGeckoUniverse, self._select_assets)
    
    def _select_assets(self, data: List[CoinGeckoUniverse]) -> List[Symbol]:
        # Select the coins that the brokerage supports and have the quote currency we want.
        tradable_coins = sorted([d for d in data if d.coin + self.account_currency in self._market_pairs], key=lambda x: x.market_cap)
        # Select the largest coins.
        return [x.create_symbol(self._market, self.account_currency) for x in tradable_coins[-10:]]