All Projects → councilofelders → numereval

councilofelders / numereval

Licence: MIT license
A small library to locally calculate the scores on numer.ai tournament's diagnostics dashboard.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to numereval

Tradier Options Plotter
Python CLI tool for plotting options price history. Powered by Tradier's Sandbox API.
Stars: ✭ 24 (-22.58%)
Mutual labels:  finance, plotting
pyEX
Python interface to IEX and IEX cloud APIs
Stars: ✭ 407 (+1212.9%)
Mutual labels:  finance
salaryconverter
Equivalent salary converter using PPP
Stars: ✭ 42 (+35.48%)
Mutual labels:  finance
budget-manager
Easy-to-use, lightweight and self-hosted solution to track your finances
Stars: ✭ 20 (-35.48%)
Mutual labels:  finance
Scrape-Finance-Data
My code for scraping financial data in Vietnam
Stars: ✭ 13 (-58.06%)
Mutual labels:  finance
Macro-with-Python
Macro with Python
Stars: ✭ 45 (+45.16%)
Mutual labels:  plotting
mtss-gan
MTSS-GAN: Multivariate Time Series Simulation with Generative Adversarial Networks (by @firmai)
Stars: ✭ 77 (+148.39%)
Mutual labels:  finance
ScoreCardModel
Score card model for Credit Scoring System.
Stars: ✭ 105 (+238.71%)
Mutual labels:  finance
fundamentos
Download Bovespa Stock Market fundamentals with Python.
Stars: ✭ 80 (+158.06%)
Mutual labels:  finance
market risk gan tensorflow
Using Bidirectional Generative Adversarial Networks to estimate Value-at-Risk for Market Risk Management using TensorFlow.
Stars: ✭ 63 (+103.23%)
Mutual labels:  finance
yahoo-historical
Downloads historical EOD (end of day) prices from yahoo finance
Stars: ✭ 96 (+209.68%)
Mutual labels:  finance
moolah-old
The source code for the original version of Moolah
Stars: ✭ 32 (+3.23%)
Mutual labels:  finance
EOmaps
A library to create interactive maps of geographical datasets
Stars: ✭ 193 (+522.58%)
Mutual labels:  plotting
Block Codes
This depository uses SEC EDGAR data in Schedule 13D and Schedule 13G data to find all positions above 5% in all US stocks between 1994 and 2018.
Stars: ✭ 55 (+77.42%)
Mutual labels:  finance
wolf
🐺 Binance trading bot for node.js
Stars: ✭ 76 (+145.16%)
Mutual labels:  finance
go-plotly
The goal of the go-plotly package is to provide a pleasant Go interface for creating figure specifications which are displayed by the plotly.js JavaScript graphing library.
Stars: ✭ 59 (+90.32%)
Mutual labels:  plotting
Multifractal-Model-of-Asset-Returns-MMAR-for-Thesis
I wrote a Master's in Finance thesis on Monte Carlo simulation of the Multifractal Model of Asset Returns. This is a model developed in the late 1990's by Benoît Mandelbrot and his two students, Laurent Calvet and Adlai Fisher. I had never programmed before and this was my first big coding project — so sorry if the code sucks! I did what I could :)
Stars: ✭ 29 (-6.45%)
Mutual labels:  finance
Mida
The open-source and cross-platform trading framework
Stars: ✭ 263 (+748.39%)
Mutual labels:  finance
fhub
Python client for Finnhub API
Stars: ✭ 31 (+0%)
Mutual labels:  finance
Fynance
Python and Cython scripts of machine learning, econometrics and statistical tools designed for finance.
Stars: ✭ 20 (-35.48%)
Mutual labels:  finance

A small library to reproduce the scores on numer.ai diagnistics dashboard.

Downloads

Installation

pip install numereval

Not an official Numerai tool

Structure

Structure

Numerai main tournament evaluation metrics

numereval.numereval.evaluate

A generic function to calculate basic per-era correlation stats with optional feature exposure and plotting.

Useful for evaluating custom validation split from training data without MMC metrics and correlation with example predictions.

from numereval.numereval import evaluate

evaluate(training_data, plot=True, feature_exposure=False)
Correlations plot Returned metrics
Training Correlations Metrics

numereval.numereval.diagnostics

To reproduce the scores on diagnostics dashboard locally with optional plotting of per-era correlations.

from numereval.numereval import diagnostics

validation_data = tournament_data[tournament_data.data_type == "validation"]

diagnostics(
    validation_data,
    plot=True,
    example_preds_loc="numerai_dataset_244\example_predictions.csv",
)
Validation plot Returned metrics
all eras validation plot all eras validation metrics

Specific validation eras

specify a list of eras in the format eras = ["era121", "era122", "era209"]

validation_data = tournament_data[tournament_data.data_type == "validation"]

eras = validation_data.era.unique()[11:-2]

numereval.numereval.diagnostics(
    validation_data,
    plot=True,
    example_preds_loc="numerai_dataset_244\example_predictions.csv",
    eras=eras,
)
Validation plot Returned metrics
all eras validation plot all eras validation metrics

Numerai Signals evaluation metrics

Note: Since predictions are neutralized against Numerai's internal features before scoring, results from numereval.signalseval.run_analytics() do not represent exact diagnostics and live scores.

import numereval
from numereval.signalseval import run_analytics, score_signals

#after assigning predictions
train_era_scores = train_data.groupby(train_data.index).apply(score_signals)
test_era_scores = test_data.groupby(test_data.index).apply(score_signals)

train_scores = run_analytics(train_era_scores, plot=False)
test_scores = run_analytics(test_era_scores, plot=True)

Test correlation plot

Test cumulative correlation plot

train_scores test_scores
train_Scores test_Scores

Thanks to Jason Rosenfeld for allowing the run_analytics() to be integrated into the library.

Docs will be updated soon!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].