From 09899190440cdb7bbe5889d60de7aeba1df58799 Mon Sep 17 00:00:00 2001 From: Conner Fromknecht Date: Fri, 30 Jun 2017 13:37:57 -0700 Subject: [PATCH] Update README.rst --- README.rst | 101 ++++++++++++++++++++++++++--------------------------- 1 file changed, 50 insertions(+), 51 deletions(-) diff --git a/README.rst b/README.rst index ea1da4d0..45435fd2 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,4 @@ +======== Catalyst ======== @@ -6,7 +7,7 @@ Catalyst Catalyst is an algorithmic trading library for crypto-assets written in Python. It allows trading strategies to be easily expressed and backtested against historical data, providing analytics and insights regarding a particular strategy's performance. Catalyst will be expanded to support live-trading of crypto-assets in the coming months. -Please visit ``_ to learn about Catalyst, or refer to the +Please visit ``_ to learn about Catalyst, or refer to the `whitepaper `_ for further technical details. Interested in getting involved? @@ -45,51 +46,10 @@ If you wish to run any examples or use matplotlib during development, it can be $ pip install matplotlib -Virtual Environments --------------------- +Getting Started +=============== -Here we will provide a brief tutorial for installing ``virtualenv`` and its basic usage. -For more information regarding ``virtualenv``, please refer to this `virtualenv guide `_. - -The ``virtualenv`` command can be installed using: - -.. code-block:: bash - - $ pip install virtualenv - -To create a new virtual environment, choose a directory, e.g. ``/path/to/venv-dir``, where project-specific packages and files will be stored. The environment is created by running: - -.. code-block:: bash - - $ virtualenv /path/to/venv-dir - -To enter an environment, run the ``bin/activate`` script located in ``/path/to/venv-dir`` using: - -.. code-block:: bash - - $ source /path/to/venv-dir/bin/activate - -Exiting an environment is accomplished using ``deactivate``, and removing it entirely is done by deleting ``/path/to/venv-dir``. - -Using virtualenv & matplotlib on OS X -------------------------------------- - -A note about using matplotlib in virtual enviroments on OS X: it may be necessary to add - -.. code-block:: python - - backend : TkAgg - -to your ``~/.matplotlib/matplotlibrc`` file, in order to override the default ``macosx`` backend for your system, which may not be accessible from inside the virtual environment. -This will allow Catalyst to open matplotlib charts from within a virtual environment, which is useful for displaying the performance of your backtests. To learn more about matplotlib backends, please refer to the -`matplotlib backend documentation `_. - -Quickstart -========== - -See our `getting started tutorial `_. - -The following code implements a simple buy and hodl algorithm. +The following code implements a simple buy and hodl algorithm. The full source can be found in ``catalyst/examples/buy_and_hodl.py``. .. code:: python @@ -129,8 +89,9 @@ The following code implements a simple buy and hodl algorithm. # Retrieve current price from pricing data price = data[context.asset].price - # Check if still hodling and could afford another purchase + # Check if still hodling and could (approximately) afford another purchase if context.is_hodling and cash > price: + # Place order to make position in asset equal to target_hodl_value order_target_value( context.asset, target_hodl_value, @@ -152,7 +113,7 @@ line, run: .. code:: bash $ catalyst ingest - $ catalyst run -f buy_and_hodl.py --start 2015-1-1 --end 2016-6-25 --captial-base 100000 + $ catalyst run -f buy_and_hodl.py --start 2015-1-1 --end 2016-6-25 --captial-base 100000 -o dvwap.pickle This will download the crypto-asset price data from a poloniex bundle curated by Enigma in the specified time range and stream it through @@ -160,6 +121,46 @@ the algorithm and plot the resulting performance using matplotlib. You can find other examples in the ``catalyst/examples`` directory. + +Virtual Environments +==================== + +Here we will provide a brief tutorial for installing ``virtualenv`` and its basic usage. +For more information regarding ``virtualenv``, please refer to this `virtualenv guide `_. + +The ``virtualenv`` command can be installed using: + +.. code-block:: bash + + $ pip install virtualenv + +To create a new virtual environment, choose a directory, e.g. ``/path/to/venv-dir``, where project-specific packages and files will be stored. The environment is created by running: + +.. code-block:: bash + + $ virtualenv /path/to/venv-dir + +To enter an environment, run the ``bin/activate`` script located in ``/path/to/venv-dir`` using: + +.. code-block:: bash + + $ source /path/to/venv-dir/bin/activate + +Exiting an environment is accomplished using ``deactivate``, and removing it entirely is done by deleting ``/path/to/venv-dir``. + +OS X + virtualenv + matplotlib +------------------------------------- + +A note about using matplotlib in virtual enviroments on OS X: it may be necessary to add + +.. code-block:: python + + backend : TkAgg + +to your ``~/.matplotlib/matplotlibrc`` file, in order to override the default ``macosx`` backend for your system, which may not be accessible from inside the virtual environment. +This will allow Catalyst to open matplotlib charts from within a virtual environment, which is useful for displaying the performance of your backtests. To learn more about matplotlib backends, please refer to the +`matplotlib backend documentation `_. + Disclaimer ========== @@ -171,7 +172,5 @@ Hello World, The Enigma Team -.. |version status| image:: https://img.shields.io/pypi/pyversions/catalyst-hf.svg - :target: https://testpypi.python.org/pypi/catalyst-hf - -.. _`Catalyst Install Documentation` : https://enigma.co/catalyst/install.html +.. |version status| image:: https://img.shields.io/pypi/pyversions/enigma-catalyst.svg + :target: https://pypi.python.org/pypi/enigma-catalyst