Skip to content

Blue Blood Engine - quantitative trading strategies integration and indexing platform.

License

Notifications You must be signed in to change notification settings

TalaikisInc/blueblood

Repository files navigation

Bkue Blood

Blue Blood Engine

Structure (not fully implemented)

Blue Blood Engine is a set of trading and analysis related tools and other software.

Predecessor

This project is the child, not compatible next generation of the Quantrade project.

Install

chmod +x env.sh
./env.sh

Or, just use Docker:

chmod +x build.sh
chmod +x run.sh
./build.sh
./run.sh

Start

Edit .env, create (Postgres) database 'blueblood', then:

python manage.py --db=one_time
cd db
node makeTables.js

Management

Single point management:

python manage.py --<command>=<params>

Commands

Initializers

# creates required tables:
python manage.py --db=one_time

Data

# collect data for non-daemonized collectors, for parameters - see manage.py:
collect=<param>
# rarely run collections (like sysmbols)
collect=one_time

R&D

# run the specified script from playground
play=<script>
# playground has a simple demo file, run it:
play=demo
# analyze specified alpha factor.
analyze=<factor>

Tests

...

Strategy format

Strategies are put inside app/stratrgies/_implementations/ directory.

def main():
    # Your code

    return [[returns_vector, 'name']]

Indicator format

Preprocessed indicators are put inside app/indicators/_implementations/ directory.

def main():
    # Your code

    return [[indicator_vector, 'name']]

Portfolio format

Portfolios are put inside app/portfolio/_implementations/ directory.

def main():
    # Your code

    return [[returns, adjusted_returns, commissions_vector, 'name']]]

License

GPL v3.0