About NFT Sales

The NFT Sales dataset by CryptoSlam! provides Non-Fungible Tokens (NFT) sales volume data in various blockchain marketplaces. This dataset covers 11 blockchains that have their own native Cryptocurrencies. The data starts in June 2017 and is delivered on a daily frequency. This dataset fetches the number of transactions, unique buyers, unique sellers, and the dollar volume of NFT transactions on all secondary marketplaces tracked by CryptoSlam, which includes owner-to-owner sales only (not initial sales from the product directly to the owners).


About CryptoSlam!

CryptoSlam! is an NFT industry data aggregator backed by Mark Cuban. Features project analytics, NFT values, rarity, scarcity, most popular collections, activity history & more.


About QuantConnect

QuantConnect was founded in 2012 to serve quants everywhere with the best possible algorithmic trading technology. Seeking to disrupt a notoriously closed-source industry, QuantConnect takes a radically open-source approach to algorithmic trading. Through the QuantConnect web platform, more than 50,000 quants are served every month.


Algorithm Example

from AlgorithmImports import *
from QuantConnect.DataSource import *

class CryptoSlamNFTSalesAlgorithm(QCAlgorithm):
    
    def initialize(self) -> None:
        self.set_start_date(2019, 1, 1)   # Set Start Date
        self.set_end_date(2020, 12, 31)    # Set End Date
        self.set_cash(100000)

        self.ethusd = self.add_crypto("ETHUSD", Resolution.MINUTE).symbol
        ### Requesting data
        self.eth_nft_sales_symbol = self.add_data(CryptoSlamNFTSales, "ETH").symbol

        ### Historical data
        history = self.history(self.eth_nft_sales_symbol, 60, Resolution.DAILY)
        self.debug(f"We got {len(history)} items from our history request for ETH CryptoSlam NFT Sales data")

        self.last_avg_sales = None

    def on_data(self, slice: Slice) -> None:
        ### Retrieving data
        data = slice.Get(CryptoSlamNFTSales)
        
        if self.eth_nft_sales_symbol in data and data[self.eth_nft_sales_symbol] != None:
            
            current_avg_sales = data[self.eth_nft_sales_symbol].total_price_usd / data[self.eth_nft_sales_symbol].total_transactions

            # comparing the average sales changes, we will buy ethereum or hold cash
            if self.last_avg_sales != None and current_avg_sales > self.last_avg_sales:
                self.set_holdings(self.ethusd, 1)
            else:
                self.set_holdings(self.ethusd, 0)

            self.last_avg_sales = current_avg_sales

Example Applications

The NFT Sales dataset enables you to incorporate NFT sales information into your strategies. Examples include the following strategies: