Skip to main content

a financial optimization program

Project description

scrilla: A Financial Optimization Application

Documentation

Coverage

Code Analysis

DeepSource
DeepSource

Pipelines

Branch Status
pypi/micro-update CircleCI
pypi/micro-update CircleCI
develop/main CircleCI

Quick Start

Refer to the documentation for more detailed information on installation and usage.

Installation

PyPi Distribution

Install the package with the Python package manager,

pip install scrilla

This will install a command line interface on your path under the name scrilla. Confirm your installation with with the version command,

scrilla version

If you are on Windows, you may need to add your Python scripts bin to the $PATH. To keep the installation as minimal as possible, the base package does not include the GUI libraries. You can install the optional GUI dependency with,

pip install scrilla[gui]

Note, the GUI has a different CLI entrypoint, namely,

scrilla-gui

Source

If you prefer, you can build from source. git clone the repository and then from the root directory install the project dependencies and build the library,

pip3 install -r requirements.txt
python3 -m build

cd into the generated /dist/ to manually install the packaged code,

pip install scrilla-<major>.<minor>.<micro>-py3-none-any.whl

Configuration

In order to use this application, you will need to register for API keys with AlphaVantage, IEX and Quandl. The program will need to be made aware of these keys somehow. The best option is storing these credentials in environment variables. You can add the following lines to your .bashrc profile or corresponding configuration file for whatever shell you are using,

export ALPHA_VANTAGE_KEY=<key goes here>
export QUANDL_KEY=<key goes here>
export IEX_KEY=<key goes here>

You can also invoke the CLI function store to store the credentials in the local installation /data/common/ directory. To do so,

scrilla store -key <key> -value <value>

where <key> is one of the values: ALPHA_VANTAGE_KEY, QUANDL_KEY or IEX_KEY. <value> is the corresponding key itself given to you after registration. Obviously, <value> is case-sensitive

Keep in mind if using this method to store the API keys, the keys will be stored unencrypted in the local installation's /data/common/ directory. The recommended method is storing the credentials in the environment.

If no API keys are found through either of these methods, the application will not function properly.

Usage

The following command will optimize a portfolio of consisting of ALLY, BX, GLD, BTC and ETH over the specified date range and save the result to a JSON file.

scrilla optimize-portfolio ALLY BX GLD BTC ETH \
    -start <YYYY-MM-DD> \
    -end <YYYY-MM-DD> \
    -save <absolute path to json file> 

See usage for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scrilla-1.4.0.tar.gz (124.0 kB view hashes)

Uploaded Source

Built Distribution

scrilla-1.4.0-py3-none-any.whl (148.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page