diff --git a/current_packages.txt b/current_packages.txt new file mode 100644 index 0000000000..cb7b09e863 --- /dev/null +++ b/current_packages.txt @@ -0,0 +1,149 @@ +apt-clone==0.2.1 +apturl==0.5.2 +asttokens==2.4.1 +async-timeout==4.0.1 +beautifulsoup4==4.10.0 +blinker==1.8.2 +Brlapi==0.8.3 +Brotli==1.0.9 +certifi==2020.6.20 +chardet==4.0.0 +click==8.1.7 +colorama==0.4.4 +comm==0.2.2 +command-not-found==0.3 +configobj==5.0.6 +contourpy==1.2.1 +cryptography==3.4.8 +cupshelpers==1.0 +cycler==0.12.1 +dbus-python==1.2.18 +debugpy==1.8.2 +decorator==5.1.1 +defer==1.0.6 +distro==1.7.0 +eventkit==1.0.3 +exceptiongroup==1.2.2 +executing==2.0.1 +eyeD3==0.8.10 +filelock==3.6.0 +Flask==3.0.3 +fonttools==4.53.1 +httplib2==0.20.2 +ib-insync==0.9.86 +idna==3.3 +ifaddr==0.1.7 +IMDbPY==2021.4.18 +importlib-metadata==4.6.4 +iniconfig==2.0.0 +ipykernel==6.29.5 +ipython==8.26.0 +itsdangerous==2.2.0 +jedi==0.19.1 +jeepney==0.7.1 +Jinja2==3.1.4 +joblib==1.4.2 +jupyter_client==8.6.2 +jupyter_core==5.7.2 +keyring==23.5.0 +kiwisolver==1.4.5 +launchpadlib==1.10.16 +lazr.restfulclient==0.14.4 +lazr.uri==1.0.6 +louis==3.20.0 +macaroonbakery==1.3.1 +Mako==1.1.3 +MarkupSafe==2.1.5 +matplotlib==3.9.1 +matplotlib-inline==0.1.7 +more-itertools==8.10.0 +mutagen==1.45.1 +nemo-emblems==6.0.1 +nest-asyncio==1.6.0 +netaddr==0.8.0 +netifaces==0.11.0 +numpy==1.26.4 +oauthlib==3.2.0 +onboard==1.4.1 +packaging==21.3 +PAM==0.4.2 +pandas==2.1.3 +parso==0.8.4 +pathspec==0.9.0 +patsy==0.5.6 +pexpect==4.8.0 +Pillow==9.0.1 +platformdirs==4.2.2 +pluggy==1.5.0 +prompt_toolkit==3.0.47 +protobuf==3.12.4 +psutil==5.6.6 +ptyprocess==0.7.0 +pure_eval==0.2.3 +pyarrow==16.1.0 +pycairo==1.20.1 +pycryptodomex==3.11.0 +pycups==2.0.1 +pycurl==7.44.1 +pyelftools==0.27 +Pygments==2.18.0 +PyGObject==3.42.1 +PyICU==2.8.1 +pyinotify==0.9.6 +PyJWT==2.3.0 +pymacaroons==0.13.0 +pymongo==3.11.3 +PyNaCl==1.5.0 +pyparsing==2.4.7 +pyparted==3.11.7 +PyPDF2==3.0.1 +pyRFC3339==1.1 +pytest==8.2.2 +python-apt==2.4.0+ubuntu4 +python-dateutil==2.9.0.post0 +python-debian==0.1.43+ubuntu1.1 +python-gnupg==0.4.8 +python-magic==0.4.24 +python-xlib==0.29 +pytz==2022.1 +pyxdg==0.27 +PyYAML==5.3.1 +pyzmq==26.0.3 +qrcode==7.3.1 +reportlab==3.6.8 +requests==2.25.1 +requests-file==1.5.1 +scikit-learn==1.5.1 +scipy==1.14.0 +SecretStorage==3.3.1 +setproctitle==1.2.2 +six==1.16.0 +soupsieve==2.3.1 +ssh-import-id==5.11 +stack-data==0.6.3 +statsmodels==0.14.0 +syslogging==0.1.1 +systemd-python==234 +threadpoolctl==3.5.0 +tinycss2==1.1.1 +tldextract==3.1.2 +tomli==2.0.1 +tornado==6.4.1 +traitlets==5.14.3 +typing_extensions==4.12.2 +tzdata==2024.1 +ubuntu-drivers-common==0.0.0 +ufw==0.36.1 +Unidecode==1.3.3 +urllib3==1.26.5 +wadllib==1.3.6 +wcwidth==0.2.13 +webencodings==0.5.1 +websockets==9.1 +Werkzeug==3.0.3 +xdg==5 +xkit==0.0.0 +xlrd==1.2.0 +yamllint==1.26.3 +yt-dlp==2022.4.8 +zipp==1.0.0 diff --git a/dashboard/test.py b/dashboard/test.py new file mode 100644 index 0000000000..8a72dd1cd1 --- /dev/null +++ b/dashboard/test.py @@ -0,0 +1,13 @@ +import requests + +url = 'http://localhost:5000/reconcile' + +try: + response = requests.get(url) + response.raise_for_status() # Raise an error for bad status codes + print("Response status code:", response.status_code) + print("Response JSON data:", response.json()) +except requests.exceptions.RequestException as e: + print(f"Request failed: {e}") +except ValueError as e: + print(f"Invalid JSON response: {e}") diff --git a/email.log b/email.log new file mode 100644 index 0000000000..00714cb473 --- /dev/null +++ b/email.log @@ -0,0 +1,30 @@ +******************************************************************************** +Email stored not sent on 2024-09-11 16:08:39.977369: Price Spike WHEY + +Spike found in prices for WHEY/20250100: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-09-11 16:19:43.523136: Price Spike BUTTER + +Spike found in prices for BUTTER/20250100: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-09-11 16:22:49.142509: Price Spike SOYBEAN + +Spike found in prices for SOYBEAN/20260300: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-09-11 16:22:50.859362: Price Spike SOYBEAN + +Spike found in prices for SOYBEAN/20260500: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-09-11 16:32:17.895943: Price Spike STEEL + +Spike found in prices for STEEL/20241100: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + diff --git a/examples/introduction/crypto.ipynb b/examples/introduction/crypto.ipynb new file mode 100644 index 0000000000..9ce77c58d0 --- /dev/null +++ b/examples/introduction/crypto.ipynb @@ -0,0 +1,405 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2024-08-07 14:08:56 DEBUG config {'type': 'config', 'stage': 'config'} Adding config defaults\n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments are 'duplicate_markets' ['Another_thing', 'bad_thing'] \n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments are marked as 'ignore_instruments': not included: ['ETHANOL', 'NIFTY', 'USIRS10', 'USIRS2ERIS', 'USIRS5', 'USIRS5ERIS']\n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments removed entirely from sim: ['Another_thing', 'ETHANOL', 'NIFTY', 'USIRS10', 'USIRS2ERIS', 'USIRS5', 'USIRS5ERIS', 'bad_thing']\n", + "2024-08-07 14:08:56 INFO base_system {'stage': 'accounts'} Calculating pandl for portfolio\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'positionSize'} Getting vol target\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BITCOIN'} Calculating pandl for instrument for BITCOIN\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating notional position for BITCOIN\n", + "2024-08-07 14:08:56 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating instrument weights\n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments are 'duplicate_markets' ['Another_thing', 'bad_thing'] \n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments are marked as 'ignore_instruments': not included: ['ETHANOL', 'NIFTY', 'USIRS10', 'USIRS2ERIS', 'USIRS5', 'USIRS5ERIS']\n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments are marked as 'bad_markets': ['AEX_mini', 'AUDJPY', 'AUD_micro', 'BB3M', 'BBCOMM', 'BOBL', 'BOVESPA', 'BTP3', 'BUTTER', 'CAD2', 'CAD5', 'CAD_micro', 'CH10', 'CHEESE', 'CHFJPY', 'CHF_micro', 'CLP', 'CNH', 'CNH-onshore', 'COAL', 'COAL-GEORDIE', 'COPPER-mini', 'CORN_mini', 'COTTON', 'CZK', 'EPRA-EUROPE', 'EU-CHEM', 'EU-CONSTRUCTION', 'EU-DJ-OIL', 'EU-DJ-TELECOM', 'EU-DJ-UTIL', 'EU-FOOD', 'EU-HOUSE', 'EU-MEDIA', 'EU-MID', 'EU-RETAIL', 'EU-TRAVEL', 'EURAUD', 'EURCAD', 'EURCHF', 'EURIBOR', 'EURIBOR-ICE', 'EUROSTX-LARGE', 'EUROSTX-SMALL', 'EUROSTX200-LARGE', 'FED', 'FTSEINDO', 'FTSEVIET', 'GASOILINE_micro', 'GBPCHF', 'GBPEUR', 'GBPJPY', 'GBP_micro', 'GICS', 'HANGENT_mini', 'HIGHYIELD', 'HOUSE-US', 'IG', 'INR', 'IRS', 'JGB', 'JGB-SGX-mini', 'JGB-mini', 'KR3', 'KRWUSD', 'LUMBER-new', 'MILKDRY', 'MILKWET', 'MSCIEMASIA', 'NICKEL_LME', 'OMX', 'PLN', 'RUR', 'SARONA', 'SGD', 'SGD_mini', 'SGX', 'SHATZ', 'SMI-MID', 'SOFR', 'SONIA3', 'STEEL', 'SUGAR16', 'SWISSLEAD', 'TIN_LME', 'TWD', 'TWD-mini', 'US-PROPERTY', 'US2', 'US3', 'US5', 'VNKI', 'WHEAT_ICE', 'WHEY']\n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments have restricted trading: ['RESTRICTED_EXAMPLE'] \n", + "2024-08-07 14:08:56 DEBUG base_system Following instruments marked as not trading []\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BITCOIN'} Calculating subsystem position for BITCOIN\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BITCOIN'} Calculating volatility scalar for BITCOIN\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BITCOIN'} Calculating instrument value vol for BITCOIN\n", + "2024-08-07 14:08:56 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BITCOIN'} Calculating instrument currency vol for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily volatility for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily prices for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Calculating combined forecast for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BITCOIN'} Calculating capped forecast for BITCOIN ewmac_25\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BITCOIN'} Calculating raw forecast BITCOIN for ewmac_25\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BITCOIN'} Getting cross sectional forecasts for scalar calculation for ewmac_25 over BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Calculating forecast weights for BITCOIN\n", + "2024-08-07 14:08:57 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Calculating raw forecast weights for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily prices for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily prices for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Only this set of rules ['ewmac_25'] is cheap enough to trade for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BITCOIN'} Calculating pandl for instrument forecast for BITCOIN ewmac_25\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily prices for BITCOIN\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/trader/pysystemtrade/sysquant/estimators/forecast_scalar.py:48: FutureWarning: Series.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.\n", + " scaling_factor = scaling_factor.fillna(method=\"bfill\")\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Using only returns of BITCOIN for gross returns\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Using unpooled cost SR for BITCOIN\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.0/0.0 secs left/elapsed/total)\u0000\u0000\u0000\u0000\n", + "2024-08-07 14:08:57 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Only this set of rules ['ewmac_25'] is cheap enough to trade for BITCOIN\n", + "2024-08-07 14:08:58 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Calculating forecast div multiplier for BITCOIN\n", + "2024-08-07 14:08:58 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} Calculating forecast correlations over BITCOIN\n", + " [================================================================================] 100.0% Estimating correlations (0.0/0.0/0.0 secs left/elapsed/total)\u0000\u0000\u0000\u0000\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BITCOIN'} No mapping applied for BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Following instruments will have zero weight in optimisation of instrument weights as they have no positions (possibly too expensive?) []\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BITCOIN'} Calculating pandl for subsystem for instrument BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BITCOIN'} Calculating buffers for BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BITCOIN'} Calculating forecast method buffers for BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BITCOIN'} Calculating buffered subsystem positions\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily prices for BITCOIN\n", + "2024-08-07 14:08:58 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating raw instrument weights\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Using only returns of asset for gross returns\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Using unpooled cost SR for asset\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.0/0.0 secs left/elapsed/total)\u0000\u0000\u0000\u0000\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Following instruments will have zero weight in optimisation of instrument weights as they have no positions (possibly too expensive?) []\n", + "2024-08-07 14:08:58 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating instrument div. multiplier\n", + "2024-08-07 14:08:58 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating instrument correlations\n", + " [================================================================================] 100.0% Estimating correlations (0.0/0.0/0.0 secs left/elapsed/total)\u0000\u0000\u0000\u0000\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating buffers for BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BITCOIN'} Calculating forecast method buffers for BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BITCOIN'} Calculating buffered positions\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BITCOIN'} Calculating pandl for instrument for BITCOIN\n", + "2024-08-07 14:08:58 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BITCOIN'} Calculating daily prices for BITCOIN\n" + ] + }, + { + "data": { + "text/plain": [ + "[[('min', '-17.41'),\n", + " ('max', '14.14'),\n", + " ('median', '0.022'),\n", + " ('mean', '0.1328'),\n", + " ('std', '2.711'),\n", + " ('skew', '0.1422'),\n", + " ('ann_mean', '34'),\n", + " ('ann_std', '43.38'),\n", + " ('sharpe', '0.7838'),\n", + " ('sortino', '1.098'),\n", + " ('avg_drawdown', '-17.2'),\n", + " ('time_in_drawdown', '0.9358'),\n", + " ('calmar', '0.6726'),\n", + " ('avg_return_to_drawdown', '1.977'),\n", + " ('avg_loss', '-1.812'),\n", + " ('avg_gain', '1.939'),\n", + " ('gaintolossratio', '1.07'),\n", + " ('profitfactor', '1.158'),\n", + " ('hitrate', '0.5198'),\n", + " ('t_stat', '2.036'),\n", + " ('p_value', '0.04188')],\n", + " ('You can also plot / print:',\n", + " ['rolling_ann_std', 'drawdown', 'curve', 'percent'])]" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "Let's recap:\n", + "\n", + "We got some data and created a trading rule\n", + "\"\"\"\n", + "from sysdata.sim.db_futures_sim_data import dbFuturesSimData\n", + "data = dbFuturesSimData()\n", + "from systems.provided.rules.ewmac import ewmac_forecast_with_defaults as ewmac\n", + "from systems.provided.rules.carry import carry\n", + "from systems.forecasting import Rules\n", + "from systems.basesystem import System\n", + "from systems.trading_rules import TradingRule\n", + "from sysdata.config.configdata import Config\n", + "from systems.forecast_scale_cap import ForecastScaleCap\n", + "from systems.forecast_combine import ForecastCombine\n", + "from systems.accounts.accounts_stage import Account\n", + "from systems.rawdata import RawData\n", + "from systems.positionsizing import PositionSizing\n", + "from systems.portfolio import Portfolios\n", + "from sysquant.estimators.vol import robust_vol_calc\n", + "\n", + "def calc_ewmac_forecast(price, Lfast, Lslow=None):\n", + " \"\"\"\n", + " Calculate the ewmac trading rule forecast, given a price and EWMA speeds\n", + " Lfast, Lslow and vol_lookback\n", + " \"\"\"\n", + " # price: This is the stitched price series\n", + " # We can't use the price of the contract we're trading, or the volatility\n", + " # will be jumpy\n", + " # And we'll miss out on the rolldown. See\n", + " # https://qoppac.blogspot.com/2015/05/systems-building-futures-rolling.html\n", + " \n", + " #Crypto-trend signal\n", + " instrument_code = 'BITCOIN'\n", + " bitcoin_price = data.daily_prices(instrument_code)\n", + " bitcoin_price = price.resample(\"1B\").last()\n", + " bitcoin_fast_ewma = bitcoin_price.ewm(span=20).mean()\n", + " bitcoin_slow_ewma = bitcoin_price.ewm(span=70).mean()\n", + " bitcoin_signal = bitcoin_fast_ewma - bitcoin_slow_ewma\n", + " \n", + " price = price.resample(\"1B\").last()\n", + "\n", + " if Lslow is None:\n", + " Lslow = 3 * Lfast\n", + "\n", + " # We don't need to calculate the decay parameter, just use the span\n", + " # directly\n", + " fast_ewma = price.ewm(span=Lfast).mean()\n", + " slow_ewma = price.ewm(span=Lslow).mean()\n", + " raw_ewmac = fast_ewma - slow_ewma\n", + " vol = robust_vol_calc(price.diff())\n", + " \n", + " # Create the ewmac forecast series\n", + " ewmac_forecast = raw_ewmac / vol\n", + " \n", + " # Override the forecast based on the raw_ewmac value\n", + " ewmac_forecast[raw_ewmac > 0] = 10\n", + " ewmac_forecast[raw_ewmac < 0] = -10\n", + " \n", + " return ewmac_forecast\n", + "\n", + "\n", + "carry = TradingRule((carry, [], dict()))\n", + "ewmac_25 = TradingRule((calc_ewmac_forecast, [], dict(Lfast=10)))\n", + "# ewmac_12 = TradingRule(dict(function=calc_ewmac_forecast, other_args=dict(Lfast=12)))\n", + "#ewmac_25 = TradingRule(dict(function=calc_ewmac_forecast, other_args=dict(Lfast=25)))\n", + "# ewmac_50 = TradingRule(dict(function=calc_ewmac_forecast, other_args=dict(Lfast=50)))\n", + "#ewmac_100 = TradingRule(dict(function=calc_ewmac_forecast, other_args=dict(Lfast=100)))\n", + "\n", + "my_rules = Rules(dict(ewmac_25=ewmac_25))\n", + "\n", + "my_config = Config()\n", + "my_config\n", + "\n", + "# empty_rules = Rules()\n", + "# my_config.trading_rules = dict(ewmac8=ewmac_8, ewmac32=ewmac_32)\n", + "# my_system = System([empty_rules], data, my_config)\n", + "# my_system.rules.get_raw_forecast(\"SOFR\", \"ewmac32\").tail(5)\n", + "\n", + "\n", + "#Try to replicate Faber approximately\n", + "# Asset\tAllocation\tChange\n", + "# International Treasuries\t5.0%\t-\n", + "## BUND ? (German 10 year)\n", + "# Emerging Market Equities\t10.0%\t-\n", + "## HANG_mini ? (Chinese stocks)\n", + "# International Equities\t10.0%\t-\n", + "## DAX (German stocks)\n", + "# Gold\t10.0%\t-\n", + "## GOLD_micro\n", + "# Int-Term US Treasuries\t5.0%\t-\n", + "## US10\n", + "# US Large Cap Value\t5.0%\t\n", + "## SP500-VALUE\t\n", + "# US Small Cap Value\t5.0%\t-\n", + "## SP600-SMALL\n", + "# US Corporate Bonds\t5.0%\t-\n", + "## IG\n", + "# US Momentum\t10.0%\t-\n", + "## SP500_micro\n", + "# Long-Term US Treasuries\t5.0%\t\n", + "## US30Y_micro\n", + "# US Real Estate\t20.0%\t-\n", + "## US-REALESTATE\n", + "# Commodities\n", + "## BBCOMM\n", + "# QQQ\n", + "## NASDAQ_micro\n", + "\n", + "# we can estimate these ourselves\n", + "#my_config.instruments = [\"BUND\", \"HANG_mini\", \"DAX\", \"GOLD_micro\", \"US10\", \"R1000\", \"IG\",\"SP500_micro\", \"US30\", \"US-REALESTATE\", \"BBCOMM\", \"NASDAQ_micro\"]\n", + "my_config.instruments = ['BITCOIN']\n", + "my_config.use_forecast_scale_estimates = True\n", + "\n", + "fcs = ForecastScaleCap()\n", + "combiner = ForecastCombine()\n", + "my_account = Account()\n", + "combiner = ForecastCombine()\n", + "raw_data = RawData()\n", + "position_size = PositionSizing()\n", + "possizer = PositionSizing()\n", + "portfolio = Portfolios()\n", + "\n", + "my_config.percentage_vol_target = 40\n", + "my_config.notional_trading_capital = 1000000\n", + "my_config.base_currency = \"USD\"\n", + "#my_config.forecast_weight_estimate = dict(method=\"one_period\")\n", + "my_config.use_instrument_weight_estimates = True\n", + "# my_config.instrument_weights=dict(BITCOIN=0.5, ETHEREUM=0.5),\n", + "my_config.use_instrument_div_mult_estimates = True\n", + "my_config.use_forecast_weight_estimates = True\n", + "my_config.use_forecast_div_mult_estimates = True\n", + "#my_config.forecast_floor = 0\n", + "#my_config.use_SR_costs = 0\n", + "\n", + "my_system = System(\n", + " [my_account, fcs, my_rules, combiner, possizer, portfolio, raw_data],\n", + " data,\n", + " my_config,\n", + ")\n", + "\n", + "\n", + "# print(my_system.combForecast.get_forecast_weights(\"SOFR\").tail(5))\n", + "\n", + "\n", + "# # or we can use the values from the book\n", + "# my_config.forecast_scalars = dict(ewmac8=5.3, ewmac32=2.65)\n", + "# my_config.use_forecast_scale_estimates = False\n", + "# fcs = ForecastScaleCap()\n", + "# my_system = System([fcs, my_rules], data, my_config)\n", + "# print(my_system.forecastScaleCap.get_capped_forecast(\"SOFR\", \"ewmac32\").tail(5))\n", + "my_system.accounts.portfolio().gross.percent.stats()" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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N3v2bKvtDYOtvlqzZo137bXXek888YQ3cOBA77rrrrPZTC3Y6qvrrrvO+81vfuMtWLDA+/jjj71JkyZ5bdq08d5//32r7Q2Drb56//33vRkzZnhLly711qxZ4/31r3/12rdv7z3yyCNW2xsGW32VZNu2bV7fvn29008/3fce4BJF7eBks2XLFg+A98Ybb3ie53nbt2/32rRp4z3zzDOpNMuXL/cAePPnz8/JP3nyZN8Be+aZZ7zWrVt79fX1qWMvvPCCl0gkvD179uhviAVM9dXo0aO9f//3f8849oc//MHr2bOn19DQoLcRlgjbV0l++tOfeqeeemrq75///OfekUcemZHm/PPP90aOHKm5BfYw1VfpDB8+vCgdnGxs9FWS/v37e1OmTNFjeATY7Ktzzz3Xu+iii/QYHgGm++r888/3br311sB7gEsU9RJVNjU1NQCaN9NcuHAh9u7dixEjRqTS9OvXD7169cL8+fOFyx08eDBKSkowbdo01NfXo6amBn/9618xYsQItGnTRm8jLGGqr+rq6lBWVpZxrF27dtiwYQM+++wzDZbbR1df1dTUZGwQN3/+/IwyAGDkyJFS/e0apvoqjtjqq4aGBnz99ddF3Z+2+mrRokWYN28ehg8frsly+5jsq2nTpuHTTz/F5MmTDViun9g4OA0NDbj++utx0kkn4aijjgIAVFdXo23btujcuXNG2m7duqG6ulq47IMOOggvv/wybrnlFpSWlqJz587YsGEDnn76aZ1NsIbJvho5ciRmzpyJOXPmoKGhAR9//DHuueceAI1xFMWGrr6aN28e/vGPf+DKK69MHauurka3bt1yyqitrcU333yjtyEWMNlXccNmX919993YsWMHfvzjH2uz3yY2+qpnz54oLS3Fcccdh/Hjx+OKK67Q3g4bmOyrTz75BDfffDP+9re/oXXr4tinuzisFGD8+PFYunQp3nzzTe1lV1dXY9y4cRg7dixGjx6Nr7/+Grfddhv+/d//Ha+88goSiYT2Ok1isq/GjRuH1atX4wc/+AH27t2L8vJyXHfddbj99tuFdn91DR19tXTpUvzoRz/C5MmTcfrpp2u0zi3YV+LY6qsZM2ZgypQpeP7559G1a1fluqLERl/961//wo4dO/D222/j5ptvxiGHHILRo0eHMTsSTPVVfX09LrjgAkyZMgWHHXaYLnPNE/UamQ7Gjx/v9ezZ0/v0008zjs+ZM8cD4G3bti3jeK9evbzf//73OeUErSneeuut3nHHHZdxbP369QXXMF3EdF8l2bdvn7dhwwavrq7OmzVrlgfA27Jli44mWENHXy1btszr2rWrd8stt+SU/53vfCcnluTxxx/3ysvLtdhvE9N9lU6xx+DY6qu///3vXrt27bwXX3xRm+22sTmvktx5553eYYcdFsruKDDZV9u2bfMAeK1atUr9JBKJ1LE5c+YYaVNYitrBaWho8MaPH+/16NHD+/jjj3M+TwZX/c///E/q2IoVK6QDZydOnOidcMIJGcc+//xzD4D31ltvhW+IBWz1lR8XX3yxN3ToUGXbbaOrr5YuXep17drVu+mmm3zr+fnPf+4dddRRGcdGjx5dVEHGtvoqnWJ1cGz21YwZM7yysjLvueee09sIS0Qxr5JMmTLF6927dyj7bWKjr+rr670lS5Zk/Fx99dXe4Ycf7i1ZsiTjjS2XKGoH5+qrr/Y6derkzZ0719u0aVPqZ9euXak0V111lderVy/vtdde89577z1v6NChOTfbTz75xFu0aJH3H//xH95hhx3mLVq0yFu0aJFXV1fneV6jB5xIJLwpU6Z4H3/8sbdw4UJv5MiRXu/evTPqchlbffXFF194Dz/8sLd8+XJv0aJF3rXXXuuVlZV577zzjtX2hkFHXy1ZssSrqKjwLrrooowy0p9iJV8Tv+mmm7zly5d7Dz30UNG9Jm6rrzzPS821wYMHexdccIG3aNEib9myZdbaGhZbffXkk096rVu39h566KGMNNu3b7fa3jDY6qsHH3zQe+GFF7yPP/7Y+/jjj70///nPXseOHb3//M//tNreMNg8B9MphreoitrBAeD7M23atFSab775xvvpT3/q7b///l779u29c88919u0aVNGOcOHD/ctZ82aNak0f//7371BgwZ5++23n1dRUeGdffbZ3vLlyy21NDy2+uqLL77wTjzxRG+//fbz2rdv75122mne22+/bbGl4dHRV5MnT/YtI/ub4euvv+4NHDjQa9u2rde3b9+MOooBm30lksZlbPVV0Dk6duxYe40Nia2++sMf/uAdeeSRXvv27b3y8nJv0KBB3h//+McMSRDXsXkOplMMDk7C8zwvKD6HEEIIIaQYKb7XWgghhBBCCkAHhxBCCCGxgw4OIYQQQmIHHRxCCCGExA46OIQQQgiJHXRwCCGEEBI76OAQQgghJHbQwSGEEEJI7KCDQwhxhlNOOQXXX3+9cv61a9cikUhg8eLF2mwihBQnraM2gBBCksycORNt2rSJ2gxCSAygg0MIcYYuXbpEbQIhJCZwiYoQ4gzpS1R9+vTBXXfdhcsuuwwdO3ZEr1698Oijj2akX7BgAQYNGoSysjIcd9xxWLRoUU6ZS5cuxZlnnokOHTqgW7duuPjii/Hll18CAObOnYu2bdviX//6Vyr9b3/7W3Tt2hWbN28211BCiHHo4BBCnOWee+5JOS4//elPcfXVV2PlypUAgB07duAHP/gB+vfvj4ULF+L222/Hz372s4z827dvx3e/+10MGjQI7733HmbPno3Nmzfjxz/+MYBmh+riiy9GTU0NFi1ahF/+8pf485//jG7dullvLyFEH1yiIoQ4y/e//3389Kc/BQD84he/wL333ovXX38dhx9+OGbMmIGGhgY89thjKCsrw5FHHokNGzbg6quvTuV/8MEHMWjQINx1112pY48//jiqqqrw8ccf47DDDsN//dd/4ZVXXsGVV16JpUuXYuzYsTj77LOtt5UQohc6OIQQZxkwYEDq90QigcrKSmzZsgUAsHz5cgwYMABlZWWpNEOHDs3I/8EHH+D1119Hhw4dcspevXo1DjvsMLRt2xZPPvkkBgwYgN69e+Pee+811BpCiE3o4BBCnCX7japEIoGGhgbh/Dt27MAPf/hD/OY3v8n5rHv37qnf582bBwDYunUrtm7div3220/RYkKIKzAGhxBSlBxxxBH48MMPsXv37tSxt99+OyPNsccei2XLlqFPnz445JBDMn6STszq1atxww034L//+78xZMgQjB07VsqJIoS4CR0cQkhRcsEFFyCRSGDcuHH46KOPMGvWLNx9990ZacaPH4+tW7di9OjRePfdd7F69Wq89NJLuPTSS1FfX4/6+npcdNFFGDlyJC699FJMmzYNH374Ie65556IWkUI0QUdHEJIUdKhQwf87//+L5YsWYJBgwbhP//zP3OWonr06IG33noL9fX1OP3003H00Ufj+uuvR+fOnVFSUoJf/epX+Oyzz/DII48AaFy2evTRR3Hrrbfigw8+iKJZhBBNJDzP86I2ghBCCCFEJ3yCQwghhJDYQQeHEEIIIbGDDg4hhBBCYgcdHEIIIYTEDjo4hBBCCIkddHAIIYQQEjvo4BBCCCEkdtDBIYQQQkjsoINDCCGEkNhBB4cQQgghsYMODiGEEEJix/8DQ8LkCIgwrooAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_system.accounts.get_capped_forecast('BITCOIN', 'ewmac_25').plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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346ysrJcNyn0sGtG18oeulbOoWvlHLpWzqDr5Jx8vFZO25z3GhWCIAiCIAqXvNeoEARBEARRuJCgQhAEQRBEaCFBhSAIgiCI0EKCCkEQBEEQoSU0gso999yDI488EtXV1ejduze+8pWvYOXKlYZ92traMGPGDPTs2RPdunXD1772NWzbts2wz9VXX42JEyeirKwM48ePl57r9ddfx9FHH43q6mrU19fja1/7GtatWxfQL/OfbF6rF198EePHj0dlZSUGDhyI+++/P6ifFQh+XKtPP/0U55xzDhoaGlBRUYFRo0bhV7/6Vdq53n33XRx++OEoKyvD0KFD8fTTTwf983wlW9dq69atOPfcczF8+HBEIhFcc8012fh5vpKta/XSSy/h1FNPRX19PWpqajB58mS8/vrrWfmNfpGta/X+++/j2GOPRc+ePVFRUYGRI0fioYceyspv9ItsjleMDz74ACUlJaZzQChQQ8L06dPVp556Sl2yZIm6cOFC9YwzzlAHDBigtrS0aPtcccUVakNDg/rWW2+pc+fOVY8++mj1mGOOMRzn+9//vvqb3/xGPf/889XDDjss7Tyff/65WlZWpt58883q6tWr1Xnz5qknnHCCOmHChKB/om9k61q98soraklJifq73/1OXbNmjfryyy+rBx10kPrwww8H/RN9w49r9cQTT6hXX321+u6776pr1qxRn3nmGbWiosJwHT7//HO1srJSve6669Rly5apDz/8sBqNRtXXXnstq783E7J1rdauXateffXV6h//+Ed1/Pjx6g9+8INs/kxfyNa1+sEPfqD+/Oc/Vz/++GN11apV6s0336zGYjF1/vz5Wf29mZCtazV//nz1ueeeU5csWaKuXbtWfeaZZ9TKykr197//fVZ/byZk61ox9uzZow4ZMkSdNm2adA4IC6ERVES2b9+uAlD/+9//qqqqqnv37lVjsZj617/+Vdtn+fLlKgB1zpw5ad+//fbbpRf+r3/9q1pSUqLG43Ft27/+9S9VURS1o6PD/x+SBYK6Vuecc4769a9/3bDt17/+tdq/f381kUj4+yOyRKbXinHVVVepU6ZM0d7feOON6pgxYwz7nH322er06dN9/gXZI6hrxXPiiSfmpaAiko1rxRg9erR65513+tPwHJDNa3XWWWep5513nj8NzwFBX6uzzz5bvfXWW03ngLAQGtOPSFNTEwC96OC8efPQ2dmJqVOnavuMHDkSAwYMwJw5cxwfd+LEiYhEInjqqacQj8fR1NSEZ555BlOnTkUsFvP3R2SJoK5Ve3s7ysvLDdsqKiqwadMmrF+/3oeWZx+/rlVTU5OhkNacOXMMxwCA6dOnu7reYSOoa1WIZOtaJRIJ7Nu3L6+vZ7au1YIFCzB79myceOKJPrU8+wR5rZ566il8/vnnuP322wNoub+EUlBJJBK45pprcOyxx+LQQw8FADQ2NqK0tBR1dXWGffv06YPGxkbHxx48eDBmzZqFH/3oRygrK0NdXR02bdqEF1980c+fkDWCvFbTp0/HSy+9hLfeeguJRAKrVq3CL37xCwBJP4N8w69rNXv2bLzwwgu47LLLtG2NjY3o06dP2jGam5vR2trq7w/JAkFeq0Ijm9fqgQceQEtLC775zW/61v5sko1r1b9/f5SVleGII47AjBkz8N3vftf335ENgrxWn332GWbOnIk///nPKCkJf23iULZwxowZWLJkCd5//33fj93Y2IhLL70UF154Ic455xzs27cPt912G77+9a/jjTfegKIovp8zSIK8VpdeeinWrFmDL3zhC+js7ERNTQ1+8IMf4I477rCtdhlG/LhWS5YswZe//GXcfvvtmDZtmo+tCxd0rZyTrWv13HPP4c4778Q///lP9O7d2/O5ckk2rtV7772HlpYWfPjhh5g5cyaGDh2Kc845J5Nm54SgrlU8Hse5556LO++8E8OHD/erucGSa9uTyIwZM9T+/furn3/+uWH7W2+9pQJQ9+zZY9g+YMAA9cEHH0w7jpnN7dZbb1WPOOIIw7aNGzfa2vjCSNDXitHV1aVu2rRJbW9vV1955RUVgLp9+3Y/fkLW8ONaLV26VO3du7f6ox/9KO34xx9/fJqvxZNPPqnW1NT40v5sEvS14sl3H5VsXau//OUvakVFhfryyy/71vZsk81+xfjpT3+qDh8+PKN254Igr9WePXtUAGo0GtX+FEXRtr311luB/KZMCI2gkkgk1BkzZqj9+vVTV61alfY5cyL629/+pm1bsWKFawfR6667Tj3qqKMM27Zs2aICUD/44IPMf0gWyNa1knH++eerkydP9tz2bOPXtVqyZInau3dv9YYbbpCe58Ybb1QPPfRQw7Zzzjknr5xps3WtePJVUMnmtXruuefU8vJy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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_system.accounts.portfolio().gross.percent.drawdown().plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGdCAYAAAA44ojeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAABlYklEQVR4nO3dd3xT5f4H8E+SNulMS3cLLbvsJbMyFQQEceFVwa0XFcGFiuLliqj34u9e19WL6HWAC/dGRYayyyogU0Ypm7aU7pVmnN8fyTnZaZJmtf28X6++Xsk5JydPDiXn2+f5Pt9HJgiCACIiIqIQIg92A4iIiIhsMUAhIiKikMMAhYiIiEIOAxQiIiIKOQxQiIiIKOQwQCEiIqKQwwCFiIiIQg4DFCIiIgo5YcFugDcMBgPOnTuH2NhYyGSyYDeHiIiI3CAIAqqqqpCRkQG53HUfSbMMUM6dO4fMzMxgN4OIiIi8cPr0abRr187lMc0yQImNjQVg/IBqtTrIrSEiIiJ3VFZWIjMzU7qPu9IsAxRxWEetVjNAISIiambcSc9gkiwRERGFHAYoREREFHIYoBAREVHIYYBCREREIYcBChEREYUcBihEREQUchigEBERUchhgEJEREQhhwEKERERhRwGKERERBRyGKAQERFRyGGAQkRERCGHAQoREVErs/dMOd7fVACDQQh2U5xqlqsZExERkfeu/u9mAEBSrApX98sIcmscYw8KERFRK1JVr5Ue5xdXB7ElrjFAISIiakXeWp8vPY5UKoLYEtcYoBAREbUi+85WSo8jwkI3DAjdlhEREZHPdUqKlh5rdAb8tPc8quq1qNfqsftUWcgkzjJJloiIqBWJVpmHdRb98qf0uHtaLP4srMLfr+qJe0Z0DEbTrLAHhYiIqBWpbdA73P5nYRUA4PkVBwPZHKcYoBAREbUi9VrHAYql3afKAtAS1xigEBERtRL5F6rx5c4zjR532NSbEkweBSiLFi3C4MGDERsbi5SUFFx77bU4fPiw1TFjxoyBTCaz+rn//vutjjl16hQmT56MqKgopKSk4IknnoBOp2v6pyEiIiKnxr68Hjo3kmD1QvATZT1Kkl2/fj1mzZqFwYMHQ6fT4emnn8b48eNx8OBBREebs4JnzJiB5557TnoeFRUlPdbr9Zg8eTLS0tKwZcsWnD9/HrfffjvCw8Pxz3/+0wcfiYiIiJqiut6600Cj06Owoh7tE6OdvML3PApQVq5cafV82bJlSElJQV5eHkaNGiVtj4qKQlpamsNzrFq1CgcPHsSaNWuQmpqK/v374/nnn8eTTz6JZ599Fkql0ouPQURERL5So7EOUO5etgObj13EpzOGIadzYkDa0KQclIqKCgBAQkKC1fZPPvkESUlJ6N27N+bNm4fa2lppX25uLvr06YPU1FRp24QJE1BZWYkDBw44fB+NRoPKykqrHyIiIvKeykWRtiqbAGXzsYsAgGnvbPVrmyx5XQfFYDDgkUcewfDhw9G7d29p+/Tp09G+fXtkZGRg7969ePLJJ3H48GF88803AIDCwkKr4ASA9LywsNDhey1atAgLFy70tqlERERkQy6TOd1nOcRj25sSKF4HKLNmzcL+/fuxadMmq+333nuv9LhPnz5IT0/H2LFjkZ+fj86dO3v1XvPmzcOcOXOk55WVlcjMzPSu4URERIQ6i+nGybEqXKjSoG18JM6W16HaIij5dPupYDTPuwBl9uzZWLFiBTZs2IB27dq5PHbo0KEAgGPHjqFz585IS0vD9u3brY4pKioCAKd5KyqVCiqVypumEhERUSOemtgdfdvFYc/pcjzx1V5Ua3TYePQC0uMiccxmxWNBECBz0fviKx4FKIIg4MEHH8S3336LdevWoWPHxkvh7tmzBwCQnp4OAMjJycE//vEPFBcXIyUlBQCwevVqqNVq9OzZ08PmExERkTtcrbFzoVqDrqmxKCipAQBsPFqCjUdLAABKhXWuilYvQBkWYgHKrFmzsHz5cnz//feIjY2Vckbi4uIQGRmJ/Px8LF++HJMmTUJiYiL27t2LRx99FKNGjULfvn0BAOPHj0fPnj1x22234V//+hcKCwsxf/58zJo1i70kREREftKgNzjdl6aOAADEqOzDgga9AQq5DHpTgFOv00MZgFWQPXqHJUuWoKKiAmPGjEF6err08/nnnwMAlEol1qxZg/Hjx6N79+547LHHMHXqVPz444/SORQKBVasWAGFQoGcnBzceuutuP32263qphAREZFv2QYoL/+lHwDgmv4ZuKqvcZQjKda+o+CH2cOx/emx0vOzZXV+bKWZx0M8rmRmZmL9+vWNnqd9+/b4+eefPXlrIiIiagKtzhygdEmJwdSB7TB1oHUeadeUGKvnWQlR6Nsu3mrb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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_system.accounts.portfolio().percent.curve().plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "metadata": {}, + "outputs": [], + "source": [ + "daily_returns = my_system.accounts.portfolio().percent / 100\n", + "daily_returns.to_csv('crypto_futures.csv')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/introduction/crypto_futures.csv b/examples/introduction/crypto_futures.csv new file mode 100644 index 0000000000..50238983c2 --- /dev/null +++ b/examples/introduction/crypto_futures.csv @@ -0,0 +1,1727 @@ +,0 +2017-12-22,0.0 +2017-12-25,0.0 +2017-12-26,0.0 +2017-12-27,0.0 +2017-12-28,0.0 +2017-12-29,0.0 +2018-01-01,0.0 +2018-01-02,0.0 +2018-01-03,0.0 +2018-01-04,0.0 +2018-01-05,0.0 +2018-01-08,0.0 +2018-01-09,0.0 +2018-01-10,0.0 +2018-01-11,0.0 +2018-01-12,-0.00030818610600132643 +2018-01-15,-0.002825 +2018-01-16,-0.02497117166758668 +2018-01-17,-0.0007345 +2018-01-18,0.0059325 +2018-01-19,-0.0041245 +2018-01-22,-0.0067235 +2018-01-23,0.000565 +2018-01-24,0.0025424999999999996 +2018-01-25,-0.000339 +2018-01-26,0.0052545 +2018-01-29,-0.0053675 +2018-01-30,-0.014464 +2018-01-31,0.000678 +2018-02-01,-0.010057 +2018-02-02,-0.010057 +2018-02-05,-0.015481 +2018-02-06,0.0110175 +2018-02-07,0.0037855 +2018-02-08,0.0011865 +2018-02-09,-0.001469 +2018-02-12,0.0092095 +2018-02-13,-0.004859 +2018-02-14,0.011187 +2018-02-15,0.006131107780510856 +2018-02-16,0.003616 +2018-02-19,0.009379 +2018-02-20,-0.0002825 +2018-02-21,-0.0067235 +2018-02-22,0.0 +2018-02-23,-0.0063844999999999996 +2018-02-26,0.0018645 +2018-02-27,0.0036679101172981537 +2018-02-28,-0.0030520434424141855 +2018-03-01,0.007717460129146552 +2018-03-02,0.00618573978326795 +2018-03-05,-0.0008090875187720565 +2018-03-06,-0.008611925888843713 +2018-03-07,-0.011766 +2018-03-08,-0.009398 +2018-03-09,0.003774 +2018-03-12,-0.012432 +2018-03-13,0.004958000000000001 +2018-03-14,-0.013616 +2018-03-15,0.0011840000000000002 +2018-03-16,0.004849886496795592 +2018-03-19,-0.002442 +2018-03-20,0.007992 +2018-03-21,-0.0014060000000000001 +2018-03-22,-0.003996 +2018-03-23,-0.000222 +2018-03-26,-0.011174 +2018-03-27,0.002886 +2018-03-28,-0.00296 +2018-03-29,-0.01221 +2018-03-30,-0.004292000000000001 +2018-04-02,0.0014060000000000001 +2018-04-03,0.007696 +2018-04-04,-0.007918 +2018-04-05,-0.000814 +2018-04-06,0.003774 +2018-04-09,-0.006364 +2018-04-10,0.00222 +2018-04-11,0.00185 +2018-04-12,0.012280045072431287 +2018-04-13,0.004725 +2018-04-16,-0.0013913120574888594 +2018-04-17,-0.00165 +2018-04-18,0.0037480639805325205 +2018-04-19,0.002714147781312384 +2018-04-20,0.009176146462373332 +2018-04-23,-0.0020150000000000003 +2018-04-24,0.009220584143524762 +2018-04-25,-0.006677707265786878 +2018-04-26,0.003585814162672263 +2018-04-27,0.004131740142054444 +2018-04-30,-0.0037505245468835656 +2018-05-01,-0.006358673047747631 +2018-05-02,0.006364774523161773 +2018-05-03,0.011712978887666146 +2018-05-04,0.0003898252682558051 +2018-05-07,-0.010862873590042753 +2018-05-08,-0.0038525 +2018-05-09,0.001005 +2018-05-10,-0.0041875 +2018-05-11,-0.0134 +2018-05-14,0.00469 +2018-05-15,-0.0135675 +2018-05-16,-0.003950570584612853 +2018-05-17,-0.007755508140432712 +2018-05-18,0.012954980135439498 +2018-05-21,-0.004865296540745048 +2018-05-22,-0.011748000000000001 +2018-05-23,-0.010412999999999999 +2018-05-24,-0.0012015 +2018-05-25,-0.0009345 +2018-05-28,-0.0046725 +2018-05-29,0.003471 +2018-05-30,-0.0033374999999999998 +2018-05-31,0.0068084999999999994 +2018-06-01,0.004272000000000001 +2018-06-04,-0.0064080000000000005 +2018-06-05,0.003471 +2018-06-06,-0.00026700000000000004 +2018-06-07,0.001869 +2018-06-08,-0.026166000000000002 +2018-06-11,0.0005340000000000001 +2018-06-12,-0.0049395 +2018-06-13,-0.00801 +2018-06-14,0.011214 +2018-06-15,-0.0041504504692616625 +2018-06-18,0.005206499999999999 +2018-06-19,0.00026700000000000004 +2018-06-20,-0.0008010000000000001 +2018-06-21,0.00040050000000000003 +2018-06-22,-0.0166875 +2018-06-25,0.005206499999999999 +2018-06-26,-0.0030705 +2018-06-27,-0.001335 +2018-06-28,0.0 +2018-06-29,-0.0066749999999999995 +2018-07-02,0.0196245 +2018-07-03,-0.00267 +2018-07-04,0.005072999999999999 +2018-07-05,-0.0065415000000000004 +2018-07-06,0.0030705 +2018-07-09,0.002403 +2018-07-10,-0.0081435 +2018-07-11,-0.0010680000000000002 +2018-07-12,-0.005072999999999999 +2018-07-13,-0.0005177407722305404 +2018-07-16,0.014418 +2018-07-17,0.0174885 +2018-07-18,-0.00026700000000000004 +2018-07-19,0.004806 +2018-07-20,-0.0022695000000000002 +2018-07-23,0.008811 +2018-07-24,0.015406521399082877 +2018-07-25,-0.001369855959674883 +2018-07-26,-0.01458496931825227 +2018-07-27,0.011924999999999998 +2018-07-30,-0.0014039693075132988 +2018-07-31,-0.021872741311201965 +2018-08-01,-0.007224 +2018-08-02,-0.001806 +2018-08-03,-0.025542 +2018-08-06,-0.006811670284798265 +2018-08-07,-0.008138486312837933 +2018-08-08,-0.0156444615726731 +2018-08-09,0.0038954677302836284 +2018-08-10,-0.002888 +2018-08-13,-0.00228 +2018-08-14,-0.004158278495218209 +2018-08-15,0.008208 +2018-08-16,-0.0015199999999999999 +2018-08-17,0.002888 +2018-08-20,-0.006384 +2018-08-21,0.0056240000000000005 +2018-08-22,-0.005776 +2018-08-23,0.0076 +2018-08-24,0.0038 +2018-08-27,0.001824 +2018-08-28,0.010944 +2018-08-29,-0.00228 +2018-08-30,-0.004864 +2018-08-31,0.005472 +2018-09-03,0.0056240000000000005 +2018-09-04,0.004255999999999999 +2018-09-05,-0.013074832077503847 +2018-09-06,-0.015606 +2018-09-07,-0.000153 +2018-09-10,-0.005814000000000001 +2018-09-11,0.000306 +2018-09-12,0.001683 +2018-09-13,0.0032826962382160167 +2018-09-14,0.002142 +2018-09-17,-0.009027 +2018-09-18,0.00306 +2018-09-19,0.001989 +2018-09-20,0.00459 +2018-09-21,0.005661 +2018-09-24,0.0 +2018-09-25,0.0 +2018-09-26,-0.005661 +2018-09-27,0.005661 +2018-09-28,-0.002142 +2018-10-01,-0.001989 +2018-10-02,-0.001377 +2018-10-03,-0.0029070000000000003 +2018-10-04,0.004284 +2018-10-05,-0.0009180000000000001 +2018-10-08,0.003366 +2018-10-09,-0.001683 +2018-10-10,-0.00153 +2018-10-11,-0.010863000000000001 +2018-10-12,6.9591208997744555e-06 +2018-10-15,0.005967 +2018-10-16,0.001071 +2018-10-17,0.00045900000000000004 +2018-10-18,-0.00153 +2018-10-19,0.001377 +2018-10-22,-0.0009180000000000001 +2018-10-23,-0.000153 +2018-10-24,0.000612 +2018-10-25,-0.000612940156556066 +2018-10-26,-0.00046424840909112806 +2018-10-29,-0.0038920903351606865 +2018-10-30,0.0001570819025486945 +2018-10-31,0.0009473616718315639 +2018-11-01,0.0012803612821377305 +2018-11-02,0.00032139271981109245 +2018-11-05,0.0013123961010227587 +2018-11-06,0.0014949087717798938 +2018-11-07,0.002523914065261831 +2018-11-08,-0.003071651280801654 +2018-11-09,-0.0017217508789114178 +2018-11-12,-0.002682777931275493 +2018-11-13,-0.0008775943483716484 +2018-11-14,-0.028066959131162198 +2018-11-15,0.0008925 +2018-11-16,-0.0044624999999999995 +2018-11-19,-0.0230265 +2018-11-20,-0.0130305 +2018-11-21,0.0055335 +2018-11-22,-0.0098175 +2018-11-23,-0.0087465 +2018-11-26,-0.0116025 +2018-11-27,0.0030345 +2018-11-28,0.015886499999999998 +2018-11-29,0.0019610457930943643 +2018-11-30,-0.0035399999999999997 +2018-12-03,-0.010797000000000001 +2018-12-04,0.002124 +2018-12-05,-0.005664 +2018-12-06,-0.011505000000000001 +2018-12-07,0.0035399999999999997 +2018-12-10,-0.0035399999999999997 +2018-12-11,-0.0008849999999999999 +2018-12-12,0.00081212949239749 +2018-12-13,-0.0070799999999999995 +2018-12-14,-0.0026550000000000002 +2018-12-17,0.014159999999999999 +2018-12-18,0.0051329999999999995 +2018-12-19,-0.0008849999999999999 +2018-12-20,0.014868 +2018-12-21,-0.004425 +2018-12-24,0.013098 +2018-12-25,0.0 +2018-12-26,-0.010974 +2018-12-27,-0.005841 +2018-12-28,0.007965 +2018-12-31,-0.005841 +2019-01-01,0.0 +2019-01-02,0.006372 +2019-01-03,-0.001416 +2019-01-04,0.009558 +2019-01-07,-0.0008849999999999999 +2019-01-08,-0.0008849999999999999 +2019-01-09,0.0008849999999999999 +2019-01-10,-0.014159999999999999 +2019-01-11,-0.003717 +2019-01-14,0.005487 +2019-01-15,-0.004248 +2019-01-16,0.0010079124223852478 +2019-01-17,0.002301 +2019-01-18,-0.004425 +2019-01-21,0.000531 +2019-01-22,0.0017699999999999999 +2019-01-23,-0.0019470000000000002 +2019-01-24,0.001416 +2019-01-25,-0.000708 +2019-01-28,-0.0038940000000000003 +2019-01-29,-0.0008849999999999999 +2019-01-30,0.0017699999999999999 +2019-01-31,-0.0012389999999999999 +2019-02-01,0.000354 +2019-02-04,0.0 +2019-02-05,0.000531 +2019-02-06,-0.002124 +2019-02-07,0.0 +2019-02-08,0.010797000000000001 +2019-02-11,-0.0017699999999999999 +2019-02-12,-0.0008849999999999999 +2019-02-13,0.000177 +2019-02-14,-0.000708 +2019-02-15,0.002446488658624808 +2019-02-18,0.008673 +2019-02-19,0.001224846458555375 +2019-02-20,0.001248770606470516 +2019-02-21,-0.0031860222733658054 +2019-02-22,0.0016939990748613618 +2019-02-25,-0.007207569128434132 +2019-02-26,-0.002696 +2019-02-27,-0.0043809999999999995 +2019-02-28,0.008761999999999999 +2019-03-01,-0.000337 +2019-03-04,-0.009099000000000001 +2019-03-05,0.009436 +2019-03-06,0.001011 +2019-03-07,0.000337 +2019-03-08,0.002696 +2019-03-11,-0.00337 +2019-03-12,0.001011 +2019-03-13,-0.001348 +2019-03-14,0.000674 +2019-03-15,0.007420100100430666 +2019-03-18,0.000674 +2019-03-19,0.0016657195795660858 +2019-03-20,0.003156372785601977 +2019-03-21,-0.0056547424235762435 +2019-03-22,0.0012015 +2019-03-25,-0.008811570723415669 +2019-03-26,0.002406 +2019-03-27,0.008421 +2019-03-28,-0.000802 +2019-03-29,0.007619 +2019-04-01,0.0032041828156689355 +2019-04-02,0.05376053876092174 +2019-04-03,0.024565716643459867 +2019-04-04,-0.02323915346103488 +2019-04-05,0.037736 +2019-04-08,-0.004257268995988512 +2019-04-09,0.0012636304664183965 +2019-04-10,0.007298636305794089 +2019-04-11,-0.0248969592690784 +2019-04-12,0.011858 +2019-04-15,-0.014014 +2019-04-16,0.015737176117883365 +2019-04-17,0.004845127766308474 +2019-04-18,0.007068365272177924 +2019-04-19,0.0005444053435232602 +2019-04-22,0.012938864472915772 +2019-04-23,0.001708974637924416 +2019-04-24,-0.014522571484760195 +2019-04-25,-0.03717 +2019-04-26,0.0005899999999999999 +2019-04-29,-0.0023834090082937172 +2019-04-30,0.01814782443410319 +2019-05-01,0.0016091281835929872 +2019-05-02,0.01054 +2019-05-03,0.034255 +2019-05-06,-0.000527 +2019-05-07,0.019499 +2019-05-08,0.0036868920460836644 +2019-05-09,0.024281160846557546 +2019-05-10,0.09435194162091383 +2019-05-13,0.11900750190247612 +2019-05-14,-0.0016653126989579234 +2019-05-15,0.026361 +2019-05-16,-0.03330689973547788 +2019-05-17,0.0386325 +2019-05-20,-0.028179 +2019-05-21,0.0018162132812151136 +2019-05-22,-0.024915 +2019-05-23,0.024009 +2019-05-24,0.073839 +2019-05-27,0.00495497531892104 +2019-05-28,-0.006888 +2019-05-29,-0.0030135 +2019-05-30,-0.0374535 +2019-05-31,0.0469245 +2019-06-03,-0.026260500000000003 +2019-06-04,-0.07491103290908759 +2019-06-05,0.012307520173459447 +2019-06-06,-0.009754974759649678 +2019-06-07,-0.007949013588446335 +2019-06-10,0.024712303003216838 +2019-06-11,-0.001548051986233304 +2019-06-12,0.013272290224939533 +2019-06-13,0.00879 +2019-06-14,0.049300495626123764 +2019-06-17,0.015822 +2019-06-18,-0.022854 +2019-06-19,0.018459 +2019-06-20,0.018741336369922326 +2019-06-21,0.08139395991021538 +2019-06-24,0.004575010415128125 +2019-06-25,0.053286 +2019-06-26,0.042051 +2019-06-27,-0.087312 +2019-06-28,-0.007756323673103649 +2019-07-01,-0.026435499999999997 +2019-07-02,0.0183015 +2019-07-03,0.065072 +2019-07-04,-0.013376517859870348 +2019-07-05,-0.014150000000000001 +2019-07-08,0.055751 +2019-07-09,0.0028299999999999996 +2019-07-10,-0.021791 +2019-07-11,-0.042733 +2019-07-12,-0.05633842710450641 +2019-07-15,0.020054194164788073 +2019-07-16,-0.062433564568278276 +2019-07-17,0.014403887992569444 +2019-07-18,0.026039755316974316 +2019-07-19,0.00041485813357586233 +2019-07-22,-0.008432 +2019-07-23,-0.006128372628470113 +2019-07-24,-0.010440419732454085 +2019-07-25,0.0013632300230276891 +2019-07-26,-0.0074895228742579275 +2019-07-29,-0.002596108913775073 +2019-07-30,0.002968 +2019-07-31,0.0106 +2019-08-01,0.008586 +2019-08-02,0.013886 +2019-08-05,0.017278 +2019-08-06,-0.011024 +2019-08-07,0.015572439770878218 +2019-08-08,-0.004349915224488264 +2019-08-09,-0.0002930208190857844 +2019-08-12,-0.012109520780197282 +2019-08-13,-0.019482074709517613 +2019-08-14,-0.023202111610050632 +2019-08-15,0.004998913369166257 +2019-08-16,-0.0028700182488279858 +2019-08-19,0.014282971344922372 +2019-08-20,0.00012905933545020572 +2019-08-21,-0.020592000000000003 +2019-08-22,0.00325151226746482 +2019-08-23,0.00638 +2019-08-26,-0.00264 +2019-08-27,-0.0034100000000000003 +2019-08-28,-0.01111 +2019-08-29,-0.00528 +2019-08-30,0.00759 +2019-09-02,0.013859999999999999 +2019-09-03,0.00737 +2019-09-04,-0.0044 +2019-09-05,0.00077 +2019-09-06,-0.00506 +2019-09-09,-0.0033 +2019-09-10,-0.00374 +2019-09-11,0.00187 +2019-09-12,0.00638 +2019-09-13,-0.0031031354148020524 +2019-09-16,0.00055 +2019-09-17,-0.00264 +2019-09-18,-0.00010999999999999999 +2019-09-19,0.00099 +2019-09-20,-0.00253 +2019-09-23,-0.00737 +2019-09-24,-0.02618 +2019-09-25,-0.0042899999999999995 +2019-09-26,-0.0121 +2019-09-27,0.00297 +2019-09-30,0.00407 +2019-10-01,0.0022 +2019-10-02,-0.00308 +2019-10-03,-0.00242 +2019-10-04,-0.00638 +2019-10-07,0.008579999999999999 +2019-10-08,-0.00242 +2019-10-09,0.01012 +2019-10-10,-0.00077 +2019-10-11,-0.006175190415997492 +2019-10-14,0.00099 +2019-10-15,-0.00451 +2019-10-16,-0.00484 +2019-10-17,0.00242 +2019-10-18,0.00385 +2019-10-21,0.0 +2019-10-22,-0.00165 +2019-10-23,-0.017159999999999998 +2019-10-24,0.00231 +2019-10-25,0.04939 +2019-10-28,-0.0017508592696129147 +2019-10-29,-0.0009165 +2019-10-30,-0.003666 +2019-10-31,-0.0007049999999999999 +2019-11-01,0.000423 +2019-11-04,0.003948 +2019-11-05,-0.0015086483549909642 +2019-11-06,0.0005372381930503308 +2019-11-07,-0.0037175015762167434 +2019-11-08,-0.00471440605085036 +2019-11-11,-0.007227 +2019-11-12,0.0019615341971928506 +2019-11-13,-0.0006569999999999999 +2019-11-14,-0.0023200337358987356 +2019-11-15,-0.0034882380441891596 +2019-11-18,-0.005744572665436161 +2019-11-19,-0.0016339999999999998 +2019-11-20,-0.000258 +2019-11-21,-0.0086 +2019-11-22,-0.012986 +2019-11-25,0.004896783730012228 +2019-11-26,-0.00084 +2019-11-27,0.007644 +2019-11-28,-0.0015973078037138865 +2019-11-29,0.0002505 +2019-12-02,-0.0021709999999999998 +2019-12-03,-0.0002505 +2019-12-04,-0.0014195 +2019-12-05,0.004008 +2019-12-06,0.0011690000000000001 +2019-12-09,-0.00334 +2019-12-10,-0.0019205 +2019-12-11,-0.0007515 +2019-12-12,-0.00012468430950114445 +2019-12-13,-0.0020875 +2019-12-16,-0.003674 +2019-12-17,-0.0047595 +2019-12-18,0.011356 +2019-12-19,-0.001837 +2019-12-20,0.0060955 +2019-12-23,-0.0032565 +2019-12-24,-0.000835 +2019-12-25,0.0 +2019-12-26,-0.000668 +2019-12-27,-0.0002505 +2019-12-30,0.0004175 +2019-12-31,-0.0014195 +2020-01-01,-8.35e-05 +2020-01-02,-0.0042585 +2020-01-03,0.0077655 +2020-01-06,0.0079325 +2020-01-07,0.006346000000000001 +2020-01-08,-0.0024215 +2020-01-09,-0.004008 +2020-01-10,0.0066219341293058 +2020-01-13,-0.0017289993538203477 +2020-01-14,0.02532624922348108 +2020-01-15,-0.005010392062639254 +2020-01-16,-0.004771975899887586 +2020-01-17,-0.003005769254856071 +2020-01-20,-0.0022887066688851427 +2020-01-21,0.007954986571107077 +2020-01-22,-0.01073183774545148 +2020-01-23,-0.026546683394676935 +2020-01-24,0.024948 +2020-01-27,0.034188 +2020-01-28,0.047124 +2020-01-29,-0.0032847063702713336 +2020-01-30,0.022936508917582313 +2020-01-31,-0.028603422284704846 +2020-02-03,-0.0119805 +2020-02-04,-0.014272813813700968 +2020-02-05,0.061453376207084576 +2020-02-06,0.018608 +2020-02-07,0.047683 +2020-02-10,-0.035471499999999996 +2020-02-11,0.054079499999999996 +2020-02-12,0.01163 +2020-02-13,-0.0273305 +2020-02-14,-0.03608812194895383 +2020-02-17,-0.030238 +2020-02-18,0.0668725 +2020-02-19,-0.084899 +2020-02-20,0.0037948388099871356 +2020-02-21,0.039819112542691666 +2020-02-24,-0.04482826043270397 +2020-02-25,-0.017818944713645285 +2020-02-26,-0.04397855396279803 +2020-02-27,-0.0021276333780655193 +2020-02-28,-0.010677306732469298 +2020-03-02,0.00998418341810357 +2020-03-03,-0.0020724873046285212 +2020-03-04,-0.0014960000000000002 +2020-03-05,0.005235999999999999 +2020-03-06,-0.013260000000000001 +2020-03-09,-0.0045026216897901435 +2020-03-10,0.001674 +2020-03-11,-0.000744 +2020-03-12,-0.02697 +2020-03-13,-0.00531359747383245 +2020-03-16,-0.0050711618823596205 +2020-03-17,0.00486 +2020-03-18,-0.000315 +2020-03-19,0.00846 +2020-03-20,-0.004278793949666047 +2020-03-23,0.005829 +2020-03-24,0.0019575 +2020-03-25,-0.0010875 +2020-03-26,0.0006525 +2020-03-27,-0.0076124999999999995 +2020-03-30,0.005655 +2020-03-31,-0.000261 +2020-04-01,0.001131 +2020-04-02,0.0026534999999999996 +2020-04-03,-0.0018705 +2020-04-06,0.0057855 +2020-04-07,-0.001305 +2020-04-08,0.001479 +2020-04-09,-0.0010005 +2020-04-10,-0.002262 +2020-04-13,-0.001566 +2020-04-14,0.0008265 +2020-04-15,-0.0020540688857940527 +2020-04-16,0.0039585 +2020-04-17,0.0001305 +2020-04-20,-0.0026534999999999996 +2020-04-21,-8.7e-05 +2020-04-22,0.0024360000000000002 +2020-04-23,0.004263 +2020-04-24,8.7e-05 +2020-04-27,0.001479 +2020-04-28,-0.0003390275605132199 +2020-04-29,0.012389409907043077 +2020-04-30,-0.0030735539268839673 +2020-05-01,0.008374880220013634 +2020-05-04,-0.0005719278950649158 +2020-05-05,0.0017811652881898057 +2020-05-06,0.02702693006319303 +2020-05-07,0.04817761460391849 +2020-05-08,-0.1052596208448126 +2020-05-11,-0.01967142073439429 +2020-05-12,0.020862351429316698 +2020-05-13,0.03653556884841077 +2020-05-14,0.0308945 +2020-05-15,-0.007592202362983219 +2020-05-18,0.0002775611628369099 +2020-05-19,0.0010677382934742086 +2020-05-20,-0.0209225090182458 +2020-05-21,-0.031462500000000004 +2020-05-22,-0.00881816020805757 +2020-05-25,-0.01670808237140208 +2020-05-26,-0.0070920199552708405 +2020-05-27,0.023954723668983532 +2020-05-28,0.018652739211562987 +2020-05-29,0.0008895 +2020-06-01,0.017197 +2020-06-02,-0.019282222823679106 +2020-06-03,0.0087145 +2020-06-04,0.016828 +2020-06-05,-0.003964581768952223 +2020-06-08,-0.0023186678529888128 +2020-06-09,0.003065767881220696 +2020-06-10,0.008877435129922631 +2020-06-11,-0.046801981760472185 +2020-06-12,-0.005636530129506494 +2020-06-15,0.011857890884771252 +2020-06-16,0.0035851289208749188 +2020-06-17,-0.0034273380320349995 +2020-06-18,-0.004448635871919065 +2020-06-19,-0.00346320764705919 +2020-06-22,0.019259477620334215 +2020-06-23,-0.0012989999999999998 +2020-06-24,-0.016454 +2020-06-25,-0.00198726412150865 +2020-06-26,-0.006890895177721228 +2020-06-29,0.004132465580305892 +2020-06-30,-0.002365453014197662 +2020-07-01,0.0024784242184536175 +2020-07-02,-0.002277 +2020-07-03,6.9e-05 +2020-07-06,0.0026910000000000002 +2020-07-07,-0.000621 +2020-07-08,0.00345 +2020-07-09,-0.00414 +2020-07-10,0.001173 +2020-07-13,-0.0007589999999999999 +2020-07-14,0.00011327299675227936 +2020-07-15,-0.0009660000000000001 +2020-07-16,-0.001725 +2020-07-17,0.0013109999999999999 +2020-07-20,-0.000207 +2020-07-21,0.003519 +2020-07-22,0.001794 +2020-07-23,0.001104 +2020-07-24,0.005955919915419511 +2020-07-27,0.026229596029860695 +2020-07-28,-0.013690826322322264 +2020-07-29,0.01509719790790777 +2020-07-30,-0.008058265055960656 +2020-07-31,-0.002672936470656892 +2020-08-03,0.0009269127098880767 +2020-08-04,-2.133093201129144e-05 +2020-08-05,0.04760678123453841 +2020-08-06,0.0095 +2020-08-07,-0.016516857620608612 +2020-08-10,0.018768508754012904 +2020-08-11,-0.0608900100727816 +2020-08-12,0.030218 +2020-08-13,0.02282276383311761 +2020-08-14,0.019798 +2020-08-17,0.051058000000000006 +2020-08-18,-0.039596 +2020-08-19,-0.034907 +2020-08-20,0.009378 +2020-08-21,-0.022403 +2020-08-24,0.00521 +2020-08-25,-0.05001943833185646 +2020-08-26,0.01871218246494989 +2020-08-27,-0.027897572951940647 +2020-08-28,0.042665732980906326 +2020-08-31,0.0017936494347918295 +2020-09-01,0.0209535 +2020-09-02,-0.048777 +2020-09-03,-0.050673915188975134 +2020-09-04,-0.02531774498505961 +2020-09-07,0.006493399855826626 +2020-09-08,-0.0034799999999999996 +2020-09-09,0.0020399999999999997 +2020-09-10,0.00108 +2020-09-11,-0.0014131504890589597 +2020-09-14,0.00432 +2020-09-15,0.00108 +2020-09-16,0.00318 +2020-09-17,-0.0013800000000000002 +2020-09-18,-0.00054 +2020-09-21,-0.00486 +2020-09-22,6e-05 +2020-09-23,-0.00444 +2020-09-24,0.008100000000000001 +2020-09-25,-0.00035999999999999997 +2020-09-28,0.00156 +2020-09-29,-0.0015 +2020-09-30,-0.0009 +2020-10-01,-0.0010199999999999999 +2020-10-02,0.00048 +2020-10-05,0.00132 +2020-10-06,-0.00228 +2020-10-07,0.00114 +2020-10-08,0.00294 +2020-10-09,0.005639999999999999 +2020-10-12,0.003532600185577556 +2020-10-13,-0.003058103518374737 +2020-10-14,-0.0007639240783388275 +2020-10-15,0.002989378612677806 +2020-10-16,-0.0017895130408958398 +2020-10-19,0.013906998963952732 +2020-10-20,0.009363284772741924 +2020-10-21,0.0763230927704083 +2020-10-22,-0.010032291542644907 +2020-10-23,-0.00954630514080464 +2020-10-26,0.002633650545399528 +2020-10-27,0.054420127060218614 +2020-10-28,-0.036667 +2020-10-29,0.020811000000000003 +2020-10-30,0.0302255 +2020-11-02,-0.0272525 +2020-11-03,0.046081500000000004 +2020-11-04,0.0153605 +2020-11-05,0.14070526466354016 +2020-11-06,-0.0036201474421404373 +2020-11-09,-0.023894000000000002 +2020-11-10,-0.001838 +2020-11-11,0.042364366094144804 +2020-11-12,0.054221000000000005 +2020-11-13,-0.038598 +2020-11-16,0.07122250000000001 +2020-11-17,0.086386 +2020-11-18,0.00961934305672352 +2020-11-19,0.002235 +2020-11-20,0.055428 +2020-11-23,0.00044699999999999997 +2020-11-24,0.076884 +2020-11-25,-0.05811 +2020-11-26,-0.12696863013712753 +2020-11-27,0.08831721738093833 +2020-11-30,0.11784890581902559 +2020-12-01,-0.0674842307220631 +2020-12-02,0.02284299228540133 +2020-12-03,0.014993000000000001 +2020-12-04,-0.011484000000000001 +2020-12-07,-0.009889 +2020-12-08,-0.06061 +2020-12-09,0.01595 +2020-12-10,-0.01595 +2020-12-11,0.05587966167398241 +2020-12-14,0.007793141553808298 +2020-12-15,0.0087 +2020-12-16,0.1284 +2020-12-17,0.09019655408564488 +2020-12-18,0.0326875 +2020-12-21,-0.0465687988816577 +2020-12-22,0.0627935 +2020-12-23,-0.0417725 +2020-12-24,0.005390000000000001 +2020-12-25,0.1695155 +2020-12-28,0.029267237049333424 +2020-12-29,0.009145499999999999 +2020-12-30,0.0776195 +2020-12-31,0.00046899999999999996 +2021-01-01,0.20213899999999999 +2021-01-04,-0.05104751313409297 +2021-01-05,0.08326457321300017 +2021-01-06,0.1097820506933479 +2021-01-07,0.08437186059950637 +2021-01-08,-0.0354240584769772 +2021-01-11,-0.0958629151573951 +2021-01-12,-0.05661236801147116 +2021-01-13,0.09669132037289675 +2021-01-14,0.06362852535567182 +2021-01-15,-0.10890365114635019 +2021-01-18,0.03181006746748918 +2021-01-19,-0.023496000000000003 +2021-01-20,-0.0140175 +2021-01-21,-0.1355025 +2021-01-22,0.04691723184130895 +2021-01-25,-0.0009088289280575162 +2021-01-26,0.003516354967661424 +2021-01-27,-0.04182122835669484 +2021-01-28,0.05070933438025884 +2021-01-29,-0.004770187448479928 +2021-02-01,0.007434107844221336 +2021-02-02,0.023704999999999997 +2021-02-03,0.022054999999999998 +2021-02-04,-0.0071038772512067505 +2021-02-05,0.021660185949824055 +2021-02-08,0.09819164452659875 +2021-02-09,0.0026132772266466726 +2021-02-10,-0.022045535010730144 +2021-02-11,0.04465389117132567 +2021-02-12,0.010656820178555433 +2021-02-15,-0.013593028148231443 +2021-02-16,0.020464438833020203 +2021-02-17,0.06502507693263597 +2021-02-18,-0.016037 +2021-02-19,0.11875120661947086 +2021-02-22,-0.081294 +2021-02-23,-0.1146932636343141 +2021-02-24,0.024319717828766064 +2021-02-25,-0.058998399640465805 +2021-02-26,-0.03059757049579759 +2021-03-01,0.06563484477956406 +2021-03-02,-0.015550127886037457 +2021-03-03,0.02448818485463222 +2021-03-04,-0.026705 +2021-03-05,0.036152365089724796 +2021-03-08,0.004894045330573846 +2021-03-09,0.03195 +2021-03-10,0.0113 +2021-03-11,0.021177382139536398 +2021-03-12,0.0265103928293498 +2021-03-15,-0.052949404180615556 +2021-03-16,0.0005006424982520732 +2021-03-17,0.025204290927592417 +2021-03-18,-0.007371 +2021-03-19,-0.001197 +2021-03-22,-0.045801 +2021-03-23,-0.0008036844124863649 +2021-03-24,-0.02433077390397303 +2021-03-25,-0.007707391491310186 +2021-03-26,0.03671436993238232 +2021-03-29,0.019763201307525628 +2021-03-30,0.0107325 +2021-03-31,0.000486 +2021-04-01,0.0002639441353023724 +2021-04-02,-0.007206974565366642 +2021-04-05,0.008275110176828774 +2021-04-06,-0.009976810193594213 +2021-04-07,-0.02327 +2021-04-08,0.0143225 +2021-04-09,0.026459999999999997 +2021-04-12,0.0019875 +2021-04-13,0.0387825 +2021-04-14,-0.0066300000000000005 +2021-04-15,0.01317218664962537 +2021-04-16,-0.09284078485470604 +2021-04-19,-0.0017825290543853009 +2021-04-20,-0.01447203946918055 +2021-04-21,0.003487013364120891 +2021-04-22,-0.008309393398384364 +2021-04-23,-0.022234078825042216 +2021-04-26,0.024626547224598862 +2021-04-27,0.0075070263457299915 +2021-04-28,0.00062 +2021-04-29,0.004441 +2021-04-30,0.018583150176346902 +2021-05-03,0.016306 +2021-05-04,0.014027000000000001 +2021-05-05,-0.007118 +2021-05-06,0.021789 +2021-05-07,0.050815 +2021-05-10,0.021873999999999998 +2021-05-11,-0.018911999999999998 +2021-05-12,0.035225 +2021-05-13,-0.040244 +2021-05-14,-0.05420463313275106 +2021-05-17,-0.028256 +2021-05-18,0.008231335165624541 +2021-05-19,-0.030046499999999997 +2021-05-20,-0.023222 +2021-05-21,-0.0218425 +2021-05-24,-0.016109661729420265 +2021-05-25,0.011791899972335727 +2021-05-26,8.172501803335744e-05 +2021-05-27,0.0010395 +2021-05-28,-0.0010605 +2021-05-31,-0.0059535000000000005 +2021-06-01,0.0025095 +2021-06-02,-0.0009765 +2021-06-03,0.0024885 +2021-06-04,0.0027825 +2021-06-07,-0.006846 +2021-06-08,-0.0032655 +2021-06-09,-0.0013755 +2021-06-10,0.007875 +2021-06-11,5.25e-05 +2021-06-14,0.00378 +2021-06-15,0.002322515939890067 +2021-06-16,-0.000189 +2021-06-17,-0.0052710000000000005 +2021-06-18,0.00063 +2021-06-21,-0.0046515 +2021-06-22,-0.009387 +2021-06-23,0.0044835000000000005 +2021-06-24,0.000252 +2021-06-25,0.002898 +2021-06-28,-0.000987 +2021-06-29,0.000147 +2021-06-30,0.003276 +2021-07-01,-0.0025095 +2021-07-02,-0.0026985 +2021-07-05,0.00378 +2021-07-06,-0.002898 +2021-07-07,0.000105 +2021-07-08,0.000273 +2021-07-09,-0.0035175000000000002 +2021-07-12,0.004158 +2021-07-13,-0.0031395 +2021-07-14,-0.0012495 +2021-07-15,0.0011737991914908242 +2021-07-16,-0.0029715 +2021-07-19,-0.00021 +2021-07-20,-0.0014175 +2021-07-21,0.002751 +2021-07-22,0.0 +2021-07-23,0.0 +2021-07-26,0.0 +2021-07-27,0.0 +2021-07-28,0.0 +2021-07-29,0.0 +2021-07-30,0.0 +2021-08-02,0.0 +2021-08-03,0.0 +2021-08-04,-6.6555940769993985e-06 +2021-08-05,0.0 +2021-08-06,0.019471207052395977 +2021-08-09,0.003106 +2021-08-10,0.01447224666191034 +2021-08-11,0.000929191166311965 +2021-08-12,-0.0036177973628104764 +2021-08-13,0.008375223252154937 +2021-08-16,0.021203974320989714 +2021-08-17,-0.02087307505249706 +2021-08-18,-0.020272585593418494 +2021-08-19,-0.00663701663032361 +2021-08-20,0.04347392175480103 +2021-08-23,0.03382574626619549 +2021-08-24,0.0011451939082959622 +2021-08-25,-0.03504801694268409 +2021-08-26,0.0061875 +2021-08-27,0.014680449896479765 +2021-08-30,-0.010641237585028093 +2021-08-31,-0.01619011331667171 +2021-09-01,0.0322235 +2021-09-02,0.043949999999999996 +2021-09-03,0.058394 +2021-09-06,-0.003219 +2021-09-07,0.007370937955059965 +2021-09-08,-0.138470705655217 +2021-09-09,0.017477556719047577 +2021-09-10,-0.009209282668095968 +2021-09-13,-0.014687388516739565 +2021-09-14,0.01793497568416863 +2021-09-15,0.010590689369883435 +2021-09-16,0.006375 +2021-09-17,-0.0171475 +2021-09-20,-0.03259211080529487 +2021-09-21,-0.023986807411000302 +2021-09-22,0.0076613781407800395 +2021-09-23,0.003763396581985606 +2021-09-24,-0.004416 +2021-09-27,0.000264 +2021-09-28,-0.0024360000000000002 +2021-09-29,-0.002916 +2021-09-30,0.0012360000000000001 +2021-10-01,0.016164 +2021-10-04,0.000513714838536353 +2021-10-05,0.002288 +2021-10-06,0.013585 +2021-10-07,-0.0031484113015617815 +2021-10-08,0.0031875687531095526 +2021-10-11,-0.0009374229697516048 +2021-10-12,0.015602684965491559 +2021-10-13,-0.0113540492976717 +2021-10-14,0.010920015482061878 +2021-10-15,0.042836816492839346 +2021-10-18,-0.002341973541285985 +2021-10-19,0.030175338093071172 +2021-10-20,0.033045141798171945 +2021-10-21,-0.043803712343215825 +2021-10-22,-0.01679923282951844 +2021-10-25,0.035889000000000004 +2021-10-26,-0.043134 +2021-10-27,-0.03318 +2021-10-28,0.059468575991989105 +2021-10-29,0.002453926887362255 +2021-11-01,0.003075 +2021-11-02,-0.008516000000000001 +2021-11-03,0.064857 +2021-11-04,-0.016171 +2021-11-05,0.010823000000000001 +2021-11-08,0.027452 +2021-11-09,0.03751969174816545 +2021-11-10,-0.022293862355143967 +2021-11-11,-0.03995055731636836 +2021-11-12,0.006743578812788511 +2021-11-15,-0.015586 +2021-11-16,-0.08124748366831336 +2021-11-17,-0.042683408408629234 +2021-11-18,-0.010886513770041436 +2021-11-19,0.011595524442553207 +2021-11-22,-0.01974067144356773 +2021-11-23,0.00111670016825714 +2021-11-24,0.011463413122154011 +2021-11-25,0.003314137086466666 +2021-11-26,-0.00615 +2021-11-29,0.0094625 +2021-11-30,-0.000725 +2021-12-01,0.0122625 +2021-12-02,-0.0106375 +2021-12-03,-0.037525 +2021-12-06,-0.00022698333960956976 +2021-12-07,0.010980108993149409 +2021-12-08,-0.0003885 +2021-12-09,-0.0062895 +2021-12-10,0.004906750511310049 +2021-12-13,-0.000819 +2021-12-14,-0.005376 +2021-12-15,0.0032235000000000002 +2021-12-16,-0.002331 +2021-12-17,-0.002184 +2021-12-20,0.0008085000000000001 +2021-12-21,0.003885 +2021-12-22,-0.00030450000000000003 +2021-12-23,-0.000672 +2021-12-24,0.0050085 +2021-12-27,-0.0001785 +2021-12-28,-0.000693 +2021-12-29,-0.005607 +2021-12-30,-0.0025515 +2021-12-31,0.0014385000000000001 +2022-01-03,-0.000399 +2022-01-04,-0.0020369999999999997 +2022-01-05,-0.005974500000000001 +2022-01-06,-0.00063 +2022-01-07,-0.002751 +2022-01-10,-0.0004095 +2022-01-11,7.35e-05 +2022-01-12,0.0022364999999999998 +2022-01-13,0.0021 +2022-01-14,-0.001413910983602795 +2022-01-17,-0.000399 +2022-01-18,-0.001113 +2022-01-19,-0.0015854999999999999 +2022-01-20,-0.002058 +2022-01-21,-0.008988000000000001 +2022-01-24,-0.000777 +2022-01-25,0.0001365 +2022-01-26,0.0016275 +2022-01-27,0.000378 +2022-01-28,0.0017954999999999998 +2022-01-31,-0.002226 +2022-02-01,0.0031290000000000003 +2022-02-02,0.0004935 +2022-02-03,-0.0036435 +2022-02-04,0.011696999999999999 +2022-02-07,-0.0010815 +2022-02-08,0.004683 +2022-02-09,0.0006405 +2022-02-10,-0.001827 +2022-02-11,-0.0031605 +2022-02-14,0.0015329999999999999 +2022-02-15,-0.00011399695516151532 +2022-02-16,0.003045 +2022-02-17,-0.0079065 +2022-02-18,-0.004599 +2022-02-21,-0.0024885 +2022-02-22,0.002268 +2022-02-23,-0.0019844999999999997 +2022-02-24,0.0021105 +2022-02-25,-0.001386 +2022-02-28,0.0117705 +2022-03-01,0.00105 +2022-03-02,0.0017745 +2022-03-03,-0.0006194999999999999 +2022-03-04,-0.011970000000000001 +2022-03-07,0.00030450000000000003 +2022-03-08,-0.000546 +2022-03-09,0.001554 +2022-03-10,0.0062475000000000004 +2022-03-11,-0.008914499999999999 +2022-03-14,9.45e-05 +2022-03-15,0.0035385 +2022-03-16,-0.0003885 +2022-03-17,0.003462093256110244 +2022-03-18,0.0007034999999999999 +2022-03-21,-0.000357 +2022-03-22,0.002793 +2022-03-23,0.001134 +2022-03-24,0.0024360000000000002 +2022-03-25,0.005610404072609015 +2022-03-28,0.0024369631473846027 +2022-03-29,0.001084662342638254 +2022-03-30,0.0012231504234112177 +2022-03-31,-0.011277522811033036 +2022-04-01,0.023719999999999998 +2022-04-04,-0.0016143590962301767 +2022-04-05,-0.017251551210206245 +2022-04-06,-0.063135 +2022-04-07,0.008295854938265429 +2022-04-08,-0.014756782401064896 +2022-04-11,-0.023990747884434983 +2022-04-12,-0.015233191036296225 +2022-04-13,0.008812854546942183 +2022-04-14,0.0031864765110440857 +2022-04-15,-0.006105984743881796 +2022-04-18,-0.0020155 +2022-04-19,0.003549 +2022-04-20,0.0046595 +2022-04-21,-0.00489 +2022-04-22,-0.009857431064247543 +2022-04-25,0.0022545 +2022-04-26,-0.006034500000000001 +2022-04-27,0.0024705 +2022-04-28,0.0019034999999999998 +2022-04-29,-0.0041715 +2022-05-02,0.000756 +2022-05-03,-0.0024435 +2022-05-04,0.005710499999999999 +2022-05-05,-0.0096255 +2022-05-06,-0.0053865 +2022-05-09,-0.008586 +2022-05-10,-0.0008774999999999999 +2022-05-11,-0.0054945 +2022-05-12,0.00016199999999999998 +2022-05-13,0.0061155 +2022-05-16,-0.002771718290628835 +2022-05-17,0.000945 +2022-05-18,-0.003186 +2022-05-19,-0.0013365 +2022-05-20,0.004617 +2022-05-23,-0.000189 +2022-05-24,-0.003348 +2022-05-25,0.001539 +2022-05-26,-0.0004995 +2022-05-27,0.0 +2022-05-30,0.000135 +2022-05-31,0.0061695 +2022-06-01,2.7000000000000002e-05 +2022-06-02,-0.00567 +2022-06-03,0.0007965 +2022-06-06,-0.0002835 +2022-06-07,0.003996 +2022-06-08,-0.000486 +2022-06-09,-0.0028079999999999997 +2022-06-10,-0.00864 +2022-06-13,-0.011974499999999999 +2022-06-14,-0.0002619913967406484 +2022-06-15,0.00018086128217811458 +2022-06-16,-0.005849999999999999 +2022-06-17,0.0010530000000000001 +2022-06-20,-0.000845 +2022-06-21,0.00117 +2022-06-22,-0.0021579999999999998 +2022-06-23,0.002301 +2022-06-24,0.000208 +2022-06-27,-0.0007019999999999999 +2022-06-28,-0.0012740000000000002 +2022-06-29,-0.000247 +2022-06-30,-0.003562 +2022-07-01,0.001092 +2022-07-04,0.002327 +2022-07-05,0.000793 +2022-07-06,0.000208 +2022-07-07,0.002938 +2022-07-08,-0.001794 +2022-07-11,3.9e-05 +2022-07-12,-0.002197 +2022-07-13,-0.0019500000000000001 +2022-07-14,0.0032500000000000003 +2022-07-15,0.0012078809584997019 +2022-07-18,-0.000156 +2022-07-19,0.002132 +2022-07-20,0.004394 +2022-07-21,-0.000949 +2022-07-22,-0.000572 +2022-07-25,-0.000546 +2022-07-26,-0.003991 +2022-07-27,-6.5e-05 +2022-07-28,0.007969 +2022-07-29,-0.0021493281132219226 +2022-08-01,-0.00035299999999999996 +2022-08-02,-0.001288 +2022-08-03,-0.0014199999999999998 +2022-08-04,-0.001673 +2022-08-05,0.005729 +2022-08-08,0.0011495905970306944 +2022-08-09,0.000722040431012385 +2022-08-10,0.011728667190116329 +2022-08-11,0.004539467054254164 +2022-08-12,0.006832105505835788 +2022-08-15,-3.394879135217633e-05 +2022-08-16,-0.007620213412110352 +2022-08-17,-0.01305610362718693 +2022-08-18,-0.001092 +2022-08-19,-0.046005000000000004 +2022-08-22,-0.003949637029559414 +2022-08-23,0.005602445954539047 +2022-08-24,0.0006715 +2022-08-25,0.0028316753916536592 +2022-08-26,-0.01787 +2022-08-29,0.005095499999999999 +2022-08-30,-0.000997011138095971 +2022-08-31,0.0011505 +2022-09-01,-0.0009945 +2022-09-02,-0.00039 +2022-09-05,0.000273 +2022-09-06,-0.0043875 +2022-09-07,0.0010724999999999999 +2022-09-08,0.0012870000000000002 +2022-09-09,0.009555000000000001 +2022-09-12,0.0019217830989148505 +2022-09-13,-0.0076786926528195545 +2022-09-14,0.0004908329377366387 +2022-09-15,-0.00021 +2022-09-16,-0.0033074999999999997 +2022-09-19,0.0005600000000000001 +2022-09-20,-0.001925 +2022-09-21,-0.0021525 +2022-09-22,0.0034300000000000003 +2022-09-23,-0.002065 +2022-09-26,0.00126 +2022-09-27,0.00029749999999999997 +2022-09-28,0.001085 +2022-09-29,-0.000245 +2022-09-30,-0.00105 +2022-10-03,0.001505 +2022-10-04,0.00266 +2022-10-05,-8.750000000000001e-05 +2022-10-06,-0.00021 +2022-10-07,-0.003115 +2022-10-10,1.7500000000000002e-05 +2022-10-11,-0.0007000000000000001 +2022-10-12,7.000000000000001e-05 +2022-10-13,0.00047781739919654855 +2022-10-14,-0.0002625 +2022-10-17,-8.750000000000001e-05 +2022-10-18,0.0001225 +2022-10-19,-0.0002275 +2022-10-20,-0.0006475000000000001 +2022-10-21,0.002065 +2022-10-24,-0.00098 +2022-10-25,0.0026425 +2022-10-26,0.0028000000000000004 +2022-10-27,-0.0018725 +2022-10-28,0.0011725 +2022-10-31,-0.0006202648171277709 +2022-11-01,0.00011573261315951394 +2022-11-02,-0.004791622977853076 +2022-11-03,0.000936 +2022-11-04,0.006546 +2022-11-07,8.616992288478003e-05 +2022-11-08,-0.03201394893268518 +2022-11-09,-0.020178528843019815 +2022-11-10,-0.01032547368853682 +2022-11-11,0.012551140812153718 +2022-11-14,-0.0037604723173038593 +2022-11-15,0.002277 +2022-11-16,-0.001419 +2022-11-17,0.000693 +2022-11-18,-9.900000000000001e-05 +2022-11-21,-0.0029535 +2022-11-22,0.0007425 +2022-11-23,0.0021945000000000003 +2022-11-24,0.0 +2022-11-25,0.0001485 +2022-11-28,-0.001023 +2022-11-29,0.0009075 +2022-11-30,0.0026895 +2022-12-01,-0.000858 +2022-12-02,0.0005775 +2022-12-05,-0.0005775 +2022-12-06,0.00033 +2022-12-07,-0.0007920000000000001 +2022-12-08,0.0015345 +2022-12-09,-0.0004455 +2022-12-12,8.67620401449082e-05 +2022-12-13,0.002046 +2022-12-14,0.0002145 +2022-12-15,-0.001386 +2022-12-16,-0.00198 +2022-12-19,-0.0009735000000000001 +2022-12-20,0.0011055 +2022-12-21,-0.0004455 +2022-12-22,-4.9500000000000004e-05 +2022-12-23,0.0002475 +2022-12-26,0.0 +2022-12-27,-0.0007095 +2022-12-28,-0.000132 +2022-12-29,-3.3e-05 +2022-12-30,0.000495 +2023-01-02,0.0 +2023-01-03,0.000264 +2023-01-04,0.0005445 +2023-01-05,0.00019800000000000002 +2023-01-06,0.0002145 +2023-01-09,0.001155 +2023-01-10,0.00099 +2023-01-11,0.0002805 +2023-01-12,0.005169786114632691 +2023-01-13,0.0012023230825651261 +2023-01-16,-0.00025054260485198005 +2023-01-17,0.04141921327432186 +2023-01-18,-0.018116075629885063 +2023-01-19,0.01352825910959478 +2023-01-20,0.036176436900970436 +2023-01-23,0.018147509554764848 +2023-01-24,-0.004848739874315781 +2023-01-25,-0.011204722998004539 +2023-01-26,0.012459202494228092 +2023-01-27,-0.0038363527839561425 +2023-01-30,-0.024583717177034288 +2023-01-31,0.020652499999999997 +2023-02-01,0.025639819678541488 +2023-02-02,0.01926431744368624 +2023-02-03,-0.021188817584827255 +2023-02-06,-0.012324 +2023-02-07,0.01002 +2023-02-08,-0.01838602913192917 +2023-02-09,-0.042659 +2023-02-10,-0.01992530509686632 +2023-02-13,-0.009912638422693519 +2023-02-14,0.029628071189968578 +2023-02-15,0.06174618327121164 +2023-02-16,0.013117773023391632 +2023-02-17,0.00912210804150357 +2023-02-20,-5.673008799305799e-05 +2023-02-21,-0.014295853210159574 +2023-02-22,-0.024209756624396093 +2023-02-23,0.009705 +2023-02-24,-0.0257625 +2023-02-27,0.004240172675628442 +2023-02-28,7.701967847444117e-05 +2023-03-01,0.004205735350420134 +2023-03-02,0.0014481374281432432 +2023-03-03,-0.0320415465795782 +2023-03-06,0.0014139386064875015 +2023-03-07,-0.00540644247435471 +2023-03-08,0.0010622824641261575 +2023-03-09,-0.02375889143889084 +2023-03-10,-0.0004377028261910443 +2023-03-13,0.017005 +2023-03-14,0.0031065512712499924 +2023-03-15,-0.001911 +2023-03-16,0.0017112635768382774 +2023-03-17,0.0051722972266608404 +2023-03-20,0.0036097955646649848 +2023-03-21,0.00402473038920234 +2023-03-22,-0.016115856251750552 +2023-03-23,0.023302999999999997 +2023-03-24,-0.009682079970090176 +2023-03-27,-0.012597053449191362 +2023-03-28,0.012951999999999998 +2023-03-29,0.014059148514159093 +2023-03-30,-0.007820984757664469 +2023-03-31,0.011888715511365161 +2023-04-03,-0.007652011104720251 +2023-04-04,0.006363 +2023-04-05,0.004325784179096589 +2023-04-06,-0.00763662180434597 +2023-04-07,0.0 +2023-04-10,0.01846 +2023-04-11,0.01479902724606055 +2023-04-12,-0.0015055902202610499 +2023-04-13,0.020544228767116958 +2023-04-14,0.016806372703046742 +2023-04-17,-0.023191872878274 +2023-04-18,0.021387999999999997 +2023-04-19,-0.047194 +2023-04-20,-0.027593443873955535 +2023-04-21,-0.036486775848281125 +2023-04-24,0.002225848134979481 +2023-04-25,0.009710916082190714 +2023-04-26,0.004344090504829638 +2023-04-27,0.017348818944381332 +2023-04-28,-0.006804 +2023-05-01,-0.0249565 +2023-05-02,0.017017790961312517 +2023-05-03,-0.0013346126419037437 +2023-05-04,0.002939096545547561 +2023-05-05,0.01058 +2023-05-08,-0.022414999999999997 +2023-05-09,0.0009510533316081881 +2023-05-10,0.0017166053853479887 +2023-05-11,-0.007783594631656707 +2023-05-12,-0.0025469055364164155 +2023-05-15,0.0032129999999999997 +2023-05-16,-0.0017361360694947501 +2023-05-17,0.001428 +2023-05-18,-0.0022270000000000002 +2023-05-19,0.000493 +2023-05-22,0.000136 +2023-05-23,0.001037 +2023-05-24,-0.0029409999999999996 +2023-05-25,-0.000136 +2023-05-26,0.001122 +2023-05-29,0.003417 +2023-05-30,0.000272 +2023-05-31,-0.002533 +2023-06-01,-0.000969 +2023-06-02,0.0013089999999999998 +2023-06-05,-0.005542 +2023-06-06,0.004777 +2023-06-07,-0.001989 +2023-06-08,0.000833 +2023-06-09,-0.000697 +2023-06-12,-0.001955 +2023-06-13,-0.000289 +2023-06-14,-0.003162 +2023-06-15,0.002084440055138405 +2023-06-16,0.002924 +2023-06-19,0.001156 +2023-06-20,0.005304 +2023-06-21,0.006256 +2023-06-22,0.0005099999999999999 +2023-06-23,0.002879756189111019 +2023-06-26,-0.005868116338833891 +2023-06-27,0.004578914854199121 +2023-06-28,-0.0065043662754326985 +2023-06-29,0.005443662642511176 +2023-06-30,-0.0026740847020290687 +2023-07-03,0.010464882487401002 +2023-07-04,-0.005786585572619245 +2023-07-05,-0.008174772040149025 +2023-07-06,-0.0046425 +2023-07-07,-0.00256 +2023-07-10,0.01069 +2023-07-11,-0.005314999999999999 +2023-07-12,-0.005175 +2023-07-13,0.025345 +2023-07-14,-0.024306648275785915 +2023-07-17,-0.00734475864053657 +2023-07-18,-0.0027203083128066858 +2023-07-19,0.003352017764315934 +2023-07-20,-0.004050828538126564 +2023-07-21,0.0013935124283608609 +2023-07-24,-0.009951355031514625 +2023-07-25,0.001518593339927449 +2023-07-26,0.0034750571866427114 +2023-07-27,-0.004228182953737403 +2023-07-28,0.0013823291013378204 +2023-07-31,-0.001058296928919365 +2023-08-01,0.000235 +2023-08-02,-0.000658 +2023-08-03,0.000799 +2023-08-04,-0.001786 +2023-08-07,0.0011749999999999998 +2023-08-08,0.003948 +2023-08-09,-0.0024675 +2023-08-10,-0.0004935 +2023-08-11,4.7000000000000004e-05 +2023-08-14,-0.0007893026944186172 +2023-08-15,-0.001034 +2023-08-16,-0.0007520000000000001 +2023-08-17,-0.0066974999999999995 +2023-08-18,-0.0074495 +2023-08-21,0.0 +2023-08-22,-0.001316 +2023-08-23,0.0035485 +2023-08-24,-0.0032195 +2023-08-25,0.000517 +2023-08-28,-0.0004935 +2023-08-29,0.007943 +2023-08-30,-0.001974 +2023-08-31,-0.006133499999999999 +2023-09-01,-0.0006815 +2023-09-04,0.000799 +2023-09-05,-0.0011985 +2023-09-06,-0.00018800000000000002 +2023-09-07,0.0015040000000000001 +2023-09-08,-0.000235 +2023-09-11,-0.0044415 +2023-09-12,0.0048175 +2023-09-13,0.0009532882507100177 +2023-09-14,0.0012925 +2023-09-15,-0.000517 +2023-09-18,0.0016685 +2023-09-19,0.0021385 +2023-09-20,-0.0008225 +2023-09-21,-0.0025615 +2023-09-22,-0.0003055 +2023-09-25,-0.000611 +2023-09-26,-0.0010105000000000001 +2023-09-27,0.000235 +2023-09-28,0.0046295 +2023-09-29,-0.001316 +2023-10-02,0.004465 +2023-10-03,-0.0022795000000000003 +2023-10-04,0.001363 +2023-10-05,-0.0011985 +2023-10-06,0.0028552216628291525 +2023-10-09,-0.0024840446081602235 +2023-10-10,-0.001320416799329604 +2023-10-11,-0.0052925 +2023-10-12,3.65e-05 +2023-10-13,0.0015584088166927187 +2023-10-16,0.010280504668034976 +2023-10-17,0.000165 +2023-10-18,-0.0014450913229366003 +2023-10-19,0.004091111704188166 +2023-10-20,0.007519939739750697 +2023-10-23,0.02245523503002234 +2023-10-24,0.026974055949256316 +2023-10-25,0.01544954217818023 +2023-10-26,-0.010019803333539466 +2023-10-27,-0.010243105829548066 +2023-10-30,0.015916378869404696 +2023-10-31,0.010026123068179753 +2023-11-01,0.02316973769640754 +2023-11-02,-0.022090870117249545 +2023-11-03,-0.0070999999999999995 +2023-11-06,0.028697387223539098 +2023-11-07,0.01677869948482875 +2023-11-08,-0.002048913479099563 +2023-11-09,0.07150023622247674 +2023-11-10,0.036748829884024524 +2023-11-13,-0.02509287703648652 +2023-11-14,-0.057648000000000005 +2023-11-15,0.074198 +2023-11-16,-0.07642881885522881 +2023-11-17,0.009031661711141389 +2023-11-20,0.045131500000000005 +2023-11-21,-0.027319652079336093 +2023-11-22,0.0403865 +2023-11-23,-0.0094285 +2023-11-24,0.009561 +2023-11-27,-0.035547 +2023-11-28,0.0350575 +2023-11-29,-0.0167275 +2023-11-30,0.004227 +2023-12-01,0.030731500000000002 +2023-12-04,0.09697900000000001 +2023-12-05,0.048032145319028684 +2023-12-06,-0.008276 +2023-12-07,0.017872 +2023-12-08,0.020992 +2023-12-11,-0.09841255913112898 +2023-12-12,-0.014252829172883796 +2023-12-13,0.05251685129300144 +2023-12-14,0.005588610500328212 +2023-12-15,-0.02077 +2023-12-18,0.0006345000000000001 +2023-12-19,-0.010325500000000001 +2023-12-20,0.0159535 +2023-12-21,0.0140665 +2023-12-22,0.0116315 +2023-12-25,0.0 +2023-12-26,-0.04101 +2023-12-27,0.043785932543268284 +2023-12-28,-0.016542540661706722 +2023-12-29,-0.015280414148300956 +2024-01-01,-2.2809189238259436e-05 +2024-01-02,0.0416315 +2024-01-03,-0.043775 +2024-01-04,0.025292411999237555 +2024-01-05,-0.0055695 +2024-01-08,0.041712 +2024-01-09,-0.012388695487392876 +2024-01-10,0.01570737407357517 +2024-01-11,0.0053 +2024-01-12,-0.03082105451094558 +2024-01-15,-5.7454607963769296e-05 +2024-01-16,-0.001968988148264243 +2024-01-17,-0.009576592979681206 +2024-01-18,-0.02670603709688327 +2024-01-19,0.009594887830339145 +2024-01-22,-0.023974920969148467 +2024-01-23,-0.01868137649832698 +2024-01-24,0.0017899333390568445 +2024-01-25,0.000726 +2024-01-26,0.013280920210505127 +2024-01-29,0.0052439999999999995 +2024-01-30,0.001656 +2024-01-31,-0.004945 +2024-02-01,0.0021160000000000003 +2024-02-02,-0.000414 +2024-02-05,-0.002898 +2024-02-06,0.00345 +2024-02-07,0.005083 +2024-02-08,0.006163999999999999 +2024-02-09,0.009257454794485325 +2024-02-12,0.015575720512548108 +2024-02-13,-0.00643408584452532 +2024-02-14,0.029722953888031763 +2024-02-15,0.0025024324047925404 +2024-02-16,-0.004182673158220627 +2024-02-19,-1.174247372948205e-05 +2024-02-20,0.02919219420036401 +2024-02-21,-0.029306256911404312 +2024-02-22,0.03289395438241436 +2024-02-23,-0.0367225 +2024-02-26,0.111768 +2024-02-27,0.041651452604877875 +2024-02-28,0.07544400000000001 +2024-02-29,0.018174994246679413 +2024-03-01,0.034476 +2024-03-04,0.099438 +2024-03-05,-0.07604378831133803 +2024-03-06,0.10837631553377715 +2024-03-07,0.013173459788913591 +2024-03-08,0.021899500000000002 +2024-03-11,0.06587900000000001 +2024-03-12,-0.024008500000000002 +2024-03-13,0.029099499999999997 +2024-03-14,-0.0928595 +2024-03-15,-0.023886368249497827 +2024-03-18,-0.0636425 +2024-03-19,-0.06257731995759197 +2024-03-20,0.028394658629990105 +2024-03-21,0.004057 +2024-03-22,-0.030579305688525304 +2024-03-25,0.10459614193262455 +2024-03-26,-0.02601743389709819 +2024-03-27,-0.01552 +2024-03-28,0.025984609064661317 +2024-03-29,0.0 +2024-04-01,-0.01337 +2024-04-02,-0.040574000000000006 +2024-04-03,9.101553662833227e-05 +2024-04-04,0.018871328085218332 +2024-04-05,-0.009205605332429857 +2024-04-08,0.02743200683072954 +2024-04-09,-0.01708554054122481 +2024-04-10,0.006426412482401086 +2024-04-11,0.002301 +2024-04-12,-0.021417000000000002 +2024-04-15,-0.021681786819347088 +2024-04-16,-0.0035716629162820296 +2024-04-17,-0.007904283452148851 +2024-04-18,0.009576060675059653 +2024-04-19,0.00207551264133897 +2024-04-22,0.006313999999999999 +2024-04-23,-0.00049 +2024-04-24,-0.007154000000000001 +2024-04-25,0.002296 +2024-04-26,-0.001106 +2024-04-29,0.0 +2024-04-30,0.0 +2024-05-01,0.0 +2024-05-02,0.0 +2024-05-03,0.0 +2024-05-06,0.0 +2024-05-07,-0.0026040000000000004 +2024-05-08,-0.0025340000000000002 +2024-05-09,0.0010639999999999998 +2024-05-10,-0.005292 +2024-05-13,0.007084 +2024-05-14,-0.004606 +2024-05-15,0.01291067742179791 +2024-05-16,-0.00294 +2024-05-17,0.0055720000000000006 +2024-05-20,0.008624 +2024-05-21,-0.0026528864222449787 +2024-05-22,0.001120113199162415 +2024-05-23,-0.011041264255494834 +2024-05-24,0.009160886025632538 +2024-05-27,-5.043162902485214e-06 +2024-05-28,0.003830800309100401 +2024-05-29,-0.016577560129143677 +2024-05-30,0.01062472743189288 +2024-05-31,-0.005235999999999999 +2024-06-03,0.0073 +2024-06-04,0.013229999999999999 +2024-06-05,0.016712626697505496 +2024-06-06,-0.019640679109541936 +2024-06-07,-0.024658711074126375 +2024-06-10,-0.002097 +2024-06-11,-0.042066 +2024-06-12,0.005951004657628784 +2024-06-13,-0.011824032211677946 +2024-06-14,-0.016607319265016657 +2024-06-17,0.02271328448325795 +2024-06-18,-0.018942714490650818 +2024-06-19,-1.5524589548245945e-05 +2024-06-20,0.007976413799734586 +2024-06-21,-0.0035465 +2024-06-24,-0.021402 +2024-06-25,0.012114624644539152 +2024-06-26,-0.004154701403565589 +2024-06-27,0.0014524999999999998 +2024-06-28,-0.00532 +2024-07-01,0.011795 +2024-07-02,-0.005285 +2024-07-03,-0.005004999999999999 +2024-07-04,-0.0079975 +2024-07-05,-0.0066325 +2024-07-08,-7.000000000000001e-05 +2024-07-09,0.0057225 +2024-07-10,-0.0021875 +2024-07-11,0.000735 +2024-07-12,-0.00025033343280357194 +2024-07-15,0.0219625 +2024-07-16,0.004008166303180033 +2024-07-17,-0.0009279999999999999 +2024-07-18,-0.003568 +2024-07-19,0.011439999999999999 +2024-07-22,0.0035039999999999997 +2024-07-23,-0.007776 +2024-07-24,0.000778331016897079 +2024-07-25,-0.003058626762786879 +2024-07-26,0.008300825133817866 +2024-07-29,-0.0007313597587643617 +2024-07-30,-0.005424884610121678 +2024-07-31,-0.00792 +2024-08-01,0.000264 +2024-08-02,-0.010704 diff --git a/examples/introduction/taa.ipynb b/examples/introduction/taa.ipynb new file mode 100644 index 0000000000..7d0aa62a80 --- /dev/null +++ b/examples/introduction/taa.ipynb @@ -0,0 +1,858 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2024-08-05 17:15:34 DEBUG config {'type': 'config', 'stage': 'config'} Adding config defaults\n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments are 'duplicate_markets' ['Another_thing', 'bad_thing'] \n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments are marked as 'ignore_instruments': not included: ['ETHANOL', 'NIFTY', 'USIRS10', 'USIRS2ERIS', 'USIRS5', 'USIRS5ERIS']\n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments removed entirely from sim: ['Another_thing', 'ETHANOL', 'NIFTY', 'USIRS10', 'USIRS2ERIS', 'USIRS5', 'USIRS5ERIS', 'bad_thing']\n", + "2024-08-05 17:15:34 INFO base_system {'stage': 'accounts'} Calculating pandl for portfolio\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'positionSize'} Getting vol target\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating pandl for instrument for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating notional position for BBCOMM\n", + "2024-08-05 17:15:34 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating instrument weights\n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments are 'duplicate_markets' ['Another_thing', 'bad_thing'] \n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments are marked as 'ignore_instruments': not included: ['ETHANOL', 'NIFTY', 'USIRS10', 'USIRS2ERIS', 'USIRS5', 'USIRS5ERIS']\n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments are marked as 'bad_markets': ['AEX_mini', 'AUDJPY', 'AUD_micro', 'BB3M', 'BBCOMM', 'BOBL', 'BOVESPA', 'BTP3', 'BUTTER', 'CAD2', 'CAD5', 'CAD_micro', 'CH10', 'CHEESE', 'CHFJPY', 'CHF_micro', 'CLP', 'CNH', 'CNH-onshore', 'COAL', 'COAL-GEORDIE', 'COPPER-mini', 'CORN_mini', 'COTTON', 'CZK', 'EPRA-EUROPE', 'ETHER-micro', 'EU-CHEM', 'EU-CONSTRUCTION', 'EU-DJ-OIL', 'EU-DJ-TELECOM', 'EU-DJ-UTIL', 'EU-FOOD', 'EU-HOUSE', 'EU-MEDIA', 'EU-MID', 'EU-RETAIL', 'EU-TRAVEL', 'EURAUD', 'EURCAD', 'EURCHF', 'EURIBOR', 'EURIBOR-ICE', 'EUROSTX-LARGE', 'EUROSTX-SMALL', 'EUROSTX200-LARGE', 'FED', 'FTSEINDO', 'FTSEVIET', 'GASOILINE_micro', 'GBPCHF', 'GBPEUR', 'GBPJPY', 'GBP_micro', 'GICS', 'HANGENT_mini', 'HIGHYIELD', 'HOUSE-US', 'IG', 'INR', 'IRS', 'JGB', 'JGB-SGX-mini', 'JGB-mini', 'JPY_mini', 'KR3', 'KRWUSD', 'LEAD_LME', 'LUMBER-new', 'MILKDRY', 'MILKWET', 'MSCIEMASIA', 'MSCIWORLD', 'NOK', 'OMX', 'PLN', 'RUR', 'SARONA', 'SGD', 'SGD_mini', 'SGX', 'SHATZ', 'SMI-MID', 'SOFR', 'SONIA3', 'STEEL', 'SUGAR16', 'SWISSLEAD', 'TIN_LME', 'TWD', 'TWD-mini', 'US-PROPERTY', 'US2', 'US3', 'US5', 'VNKI', 'WHEAT_ICE', 'WHEY']\n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments have restricted trading: ['RESTRICTED_EXAMPLE'] \n", + "2024-08-05 17:15:34 DEBUG base_system Following instruments marked as not trading ['IG', 'BBCOMM']\n", + "2024-08-05 17:15:34 WARNING base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} *** Following instruments are listed as trading_restrictions and/or bad_markets but still included in instrument weight optimisation: ***\n", + "['IG', 'BBCOMM']\n", + "2024-08-05 17:15:34 WARNING base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} This is fine for dynamic systems where we remove them in later optimisation, but may be problematic for static systems\n", + "2024-08-05 17:15:34 WARNING base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Consider adding to config element allocate_zero_instrument_weights_to_these_instruments\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BBCOMM'} Calculating subsystem position for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BBCOMM'} Calculating volatility scalar for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BBCOMM'} Calculating instrument value vol for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BBCOMM'} Calculating instrument currency vol for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily volatility for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Calculating combined forecast for BBCOMM\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BBCOMM'} Calculating capped forecast for BBCOMM ewmac32\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BBCOMM'} Calculating raw forecast BBCOMM for ewmac32\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BBCOMM'} Getting cross sectional forecasts for scalar calculation for ewmac32 over BBCOMM, BUND, DAX, GOLD_micro, HANG_mini, IG, NASDAQ_micro, R1000, SP500_micro, US-REALESTATE, US10, US30\n", + "2024-08-05 17:15:34 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BUND'} Calculating raw forecast BUND for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'DAX'} Calculating raw forecast DAX for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'GOLD_micro'} Calculating raw forecast GOLD_micro for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'HANG_mini'} Calculating raw forecast HANG_mini for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'IG'} Calculating raw forecast IG for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'NASDAQ_micro'} Calculating raw forecast NASDAQ_micro for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'R1000'} Calculating raw forecast R1000 for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'SP500_micro'} Calculating raw forecast SP500_micro for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US-REALESTATE'} Calculating raw forecast US-REALESTATE for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US10'} Calculating raw forecast US10 for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US30'} Calculating raw forecast US30 for ewmac32\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BBCOMM'} Calculating capped forecast for BBCOMM ewmac64\n", + "2024-08-05 17:15:35 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BBCOMM'} Calculating raw forecast BBCOMM for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BBCOMM'} Getting cross sectional forecasts for scalar calculation for ewmac64 over BBCOMM, BUND, DAX, GOLD_micro, HANG_mini, IG, NASDAQ_micro, R1000, SP500_micro, US-REALESTATE, US10, US30\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BUND'} Calculating raw forecast BUND for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'DAX'} Calculating raw forecast DAX for ewmac64\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/trader/pysystemtrade/sysquant/estimators/forecast_scalar.py:48: FutureWarning: Series.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.\n", + " scaling_factor = scaling_factor.fillna(method=\"bfill\")\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'GOLD_micro'} Calculating raw forecast GOLD_micro for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'HANG_mini'} Calculating raw forecast HANG_mini for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'IG'} Calculating raw forecast IG for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'NASDAQ_micro'} Calculating raw forecast NASDAQ_micro for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'R1000'} Calculating raw forecast R1000 for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'SP500_micro'} Calculating raw forecast SP500_micro for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US-REALESTATE'} Calculating raw forecast US-REALESTATE for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US10'} Calculating raw forecast US10 for ewmac64\n", + "2024-08-05 17:15:36 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US30'} Calculating raw forecast US30 for ewmac64\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BBCOMM'} Calculating capped forecast for BBCOMM ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BBCOMM'} Calculating raw forecast BBCOMM for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BBCOMM'} Getting cross sectional forecasts for scalar calculation for ewmac8 over BBCOMM, BUND, DAX, GOLD_micro, HANG_mini, IG, NASDAQ_micro, R1000, SP500_micro, US-REALESTATE, US10, US30\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'BUND'} Calculating raw forecast BUND for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'DAX'} Calculating raw forecast DAX for ewmac8\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/trader/pysystemtrade/sysquant/estimators/forecast_scalar.py:48: FutureWarning: Series.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.\n", + " scaling_factor = scaling_factor.fillna(method=\"bfill\")\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'GOLD_micro'} Calculating raw forecast GOLD_micro for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'HANG_mini'} Calculating raw forecast HANG_mini for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'IG'} Calculating raw forecast IG for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'NASDAQ_micro'} Calculating raw forecast NASDAQ_micro for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'R1000'} Calculating raw forecast R1000 for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'SP500_micro'} Calculating raw forecast SP500_micro for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US-REALESTATE'} Calculating raw forecast US-REALESTATE for ewmac8\n", + "2024-08-05 17:15:37 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US10'} Calculating raw forecast US10 for ewmac8\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'rules', 'instrument_code': 'US30'} Calculating raw forecast US30 for ewmac8\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Calculating forecast weights for BBCOMM\n", + "2024-08-05 17:15:38 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Calculating raw forecast weights for BBCOMM\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BUND'} Calculating capped forecast for BUND ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'DAX'} Calculating capped forecast for DAX ewmac32\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/trader/pysystemtrade/sysquant/estimators/forecast_scalar.py:48: FutureWarning: Series.fillna with 'method' is deprecated and will raise in a future version. Use obj.ffill() or obj.bfill() instead.\n", + " scaling_factor = scaling_factor.fillna(method=\"bfill\")\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'GOLD_micro'} Calculating capped forecast for GOLD_micro ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'HANG_mini'} Calculating capped forecast for HANG_mini ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'IG'} Calculating capped forecast for IG ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'NASDAQ_micro'} Calculating capped forecast for NASDAQ_micro ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'R1000'} Calculating capped forecast for R1000 ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'SP500_micro'} Calculating capped forecast for SP500_micro ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US-REALESTATE'} Calculating capped forecast for US-REALESTATE ewmac32\n", + "2024-08-05 17:15:38 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US10'} Calculating capped forecast for US10 ewmac32\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US30'} Calculating capped forecast for US30 ewmac32\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BUND'} Calculating capped forecast for BUND ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'DAX'} Calculating capped forecast for DAX ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'GOLD_micro'} Calculating capped forecast for GOLD_micro ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'HANG_mini'} Calculating capped forecast for HANG_mini ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'IG'} Calculating capped forecast for IG ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'NASDAQ_micro'} Calculating capped forecast for NASDAQ_micro ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'R1000'} Calculating capped forecast for R1000 ewmac64\n", + "2024-08-05 17:15:39 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'SP500_micro'} Calculating capped forecast for SP500_micro ewmac64\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US-REALESTATE'} Calculating capped forecast for US-REALESTATE ewmac64\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US10'} Calculating capped forecast for US10 ewmac64\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US30'} Calculating capped forecast for US30 ewmac64\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'BUND'} Calculating capped forecast for BUND ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'DAX'} Calculating capped forecast for DAX ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'GOLD_micro'} Calculating capped forecast for GOLD_micro ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'HANG_mini'} Calculating capped forecast for HANG_mini ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'IG'} Calculating capped forecast for IG ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'NASDAQ_micro'} Calculating capped forecast for NASDAQ_micro ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'R1000'} Calculating capped forecast for R1000 ewmac8\n", + "2024-08-05 17:15:40 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'SP500_micro'} Calculating capped forecast for SP500_micro ewmac8\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US-REALESTATE'} Calculating capped forecast for US-REALESTATE ewmac8\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US10'} Calculating capped forecast for US10 ewmac8\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'forecastScaleCap', 'instrument_code': 'US30'} Calculating capped forecast for US30 ewmac8\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for BBCOMM\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily volatility for BUND\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for BUND\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily volatility for DAX\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for DAX\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:15:41 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily volatility for GOLD_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for GOLD_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily volatility for HANG_mini\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for HANG_mini\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily volatility for IG\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for IG\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily volatility for NASDAQ_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for NASDAQ_micro\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:15:42 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily volatility for R1000\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for R1000\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily volatility for SP500_micro\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for SP500_micro\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily volatility for US-REALESTATE\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for US-REALESTATE\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily volatility for US10\n", + "2024-08-05 17:15:43 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for US10\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily volatility for US30\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for US30\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating pandl for instrument forecast for BBCOMM ewmac32\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating pandl for instrument forecast for BBCOMM ewmac64\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating pandl for instrument forecast for BBCOMM ewmac8\n", + "2024-08-05 17:15:44 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:15:45 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating pandl for instrument forecast for BUND ewmac32\n", + "2024-08-05 17:15:45 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:15:45 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating pandl for instrument forecast for BUND ewmac64\n", + "2024-08-05 17:15:45 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:15:45 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating pandl for instrument forecast for BUND ewmac8\n", + "2024-08-05 17:15:45 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:15:46 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating pandl for instrument forecast for DAX ewmac32\n", + "2024-08-05 17:15:46 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:15:47 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating pandl for instrument forecast for DAX ewmac64\n", + "2024-08-05 17:15:47 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:15:47 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating pandl for instrument forecast for DAX ewmac8\n", + "2024-08-05 17:15:47 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:15:48 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating pandl for instrument forecast for GOLD_micro ewmac32\n", + "2024-08-05 17:15:48 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:15:49 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating pandl for instrument forecast for GOLD_micro ewmac64\n", + "2024-08-05 17:15:49 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:15:49 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating pandl for instrument forecast for GOLD_micro ewmac8\n", + "2024-08-05 17:15:49 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:15:52 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating pandl for instrument forecast for HANG_mini ewmac32\n", + "2024-08-05 17:15:52 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:15:52 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating pandl for instrument forecast for HANG_mini ewmac64\n", + "2024-08-05 17:15:52 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:15:52 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating pandl for instrument forecast for HANG_mini ewmac8\n", + "2024-08-05 17:15:52 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:15:53 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating pandl for instrument forecast for IG ewmac32\n", + "2024-08-05 17:15:53 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating pandl for instrument forecast for IG ewmac64\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating pandl for instrument forecast for IG ewmac8\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating pandl for instrument forecast for NASDAQ_micro ewmac32\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating pandl for instrument forecast for NASDAQ_micro ewmac64\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating pandl for instrument forecast for NASDAQ_micro ewmac8\n", + "2024-08-05 17:15:54 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:15:55 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating pandl for instrument forecast for R1000 ewmac32\n", + "2024-08-05 17:15:55 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:15:56 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating pandl for instrument forecast for R1000 ewmac64\n", + "2024-08-05 17:15:56 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:15:56 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating pandl for instrument forecast for R1000 ewmac8\n", + "2024-08-05 17:15:56 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:15:56 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating pandl for instrument forecast for SP500_micro ewmac32\n", + "2024-08-05 17:15:56 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:15:57 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating pandl for instrument forecast for SP500_micro ewmac64\n", + "2024-08-05 17:15:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:15:57 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating pandl for instrument forecast for SP500_micro ewmac8\n", + "2024-08-05 17:15:57 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:15:59 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating pandl for instrument forecast for US-REALESTATE ewmac32\n", + "2024-08-05 17:15:59 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:15:59 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating pandl for instrument forecast for US-REALESTATE ewmac64\n", + "2024-08-05 17:15:59 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:15:59 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating pandl for instrument forecast for US-REALESTATE ewmac8\n", + "2024-08-05 17:15:59 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:16:00 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating pandl for instrument forecast for US10 ewmac32\n", + "2024-08-05 17:16:00 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:16:00 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating pandl for instrument forecast for US10 ewmac64\n", + "2024-08-05 17:16:00 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:16:01 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating pandl for instrument forecast for US10 ewmac8\n", + "2024-08-05 17:16:01 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:16:03 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating pandl for instrument forecast for US30 ewmac32\n", + "2024-08-05 17:16:03 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:16:03 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating pandl for instrument forecast for US30 ewmac64\n", + "2024-08-05 17:16:03 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:16:03 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating pandl for instrument forecast for US30 ewmac8\n", + "2024-08-05 17:16:03 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:16:04 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Using pooled gross returns\n", + "2024-08-05 17:16:04 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Using pooled turnover cost SR for BBCOMM\n", + "2024-08-05 17:16:04 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:05 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for BBCOMM\n", + "2024-08-05 17:16:05 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Calculating forecast div multiplier for BBCOMM\n", + "2024-08-05 17:16:05 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} Calculating forecast correlations over BBCOMM, BUND, DAX, GOLD_micro, HANG_mini, IG, NASDAQ_micro, R1000, SP500_micro, US-REALESTATE, US10, US30\n", + " [================================================================================] 100.0% Estimating correlations (0.0/0.1/0.1 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:05 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BBCOMM'} No mapping applied for BBCOMM\n", + "2024-08-05 17:16:05 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BUND'} Calculating subsystem position for BUND\n", + "2024-08-05 17:16:05 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BUND'} Calculating volatility scalar for BUND\n", + "2024-08-05 17:16:05 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BUND'} Calculating instrument value vol for BUND\n", + "2024-08-05 17:16:05 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BUND'} Calculating instrument currency vol for BUND\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Calculating combined forecast for BUND\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Calculating forecast weights for BUND\n", + "2024-08-05 17:16:06 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Calculating raw forecast weights for BUND\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Using pooled gross returns\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Using pooled turnover cost SR for BUND\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.5/0.5 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for BUND\n", + "2024-08-05 17:16:06 INFO base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} Calculating forecast div multiplier for BUND\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'BUND'} No mapping applied for BUND\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'DAX'} Calculating subsystem position for DAX\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'DAX'} Calculating volatility scalar for DAX\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'DAX'} Calculating instrument value vol for DAX\n", + "2024-08-05 17:16:06 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'DAX'} Calculating instrument currency vol for DAX\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Calculating combined forecast for DAX\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Calculating forecast weights for DAX\n", + "2024-08-05 17:16:07 INFO base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Calculating raw forecast weights for DAX\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Using pooled gross returns\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Using pooled turnover cost SR for DAX\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.5/0.5 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for DAX\n", + "2024-08-05 17:16:07 INFO base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} Calculating forecast div multiplier for DAX\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'DAX'} No mapping applied for DAX\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'GOLD_micro'} Calculating subsystem position for GOLD_micro\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'GOLD_micro'} Calculating volatility scalar for GOLD_micro\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'GOLD_micro'} Calculating instrument value vol for GOLD_micro\n", + "2024-08-05 17:16:07 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'GOLD_micro'} Calculating instrument currency vol for GOLD_micro\n", + "2024-08-05 17:16:08 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Calculating combined forecast for GOLD_micro\n", + "2024-08-05 17:16:08 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Calculating forecast weights for GOLD_micro\n", + "2024-08-05 17:16:08 INFO base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Calculating raw forecast weights for GOLD_micro\n", + "2024-08-05 17:16:08 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Using pooled gross returns\n", + "2024-08-05 17:16:08 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Using pooled turnover cost SR for GOLD_micro\n", + "2024-08-05 17:16:08 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:08 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for GOLD_micro\n", + "2024-08-05 17:16:09 INFO base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} Calculating forecast div multiplier for GOLD_micro\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'GOLD_micro'} No mapping applied for GOLD_micro\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'HANG_mini'} Calculating subsystem position for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'HANG_mini'} Calculating volatility scalar for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'HANG_mini'} Calculating instrument value vol for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'HANG_mini'} Calculating instrument currency vol for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Calculating combined forecast for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Calculating forecast weights for HANG_mini\n", + "2024-08-05 17:16:09 INFO base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Calculating raw forecast weights for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Using pooled gross returns\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Using pooled turnover cost SR for HANG_mini\n", + "2024-08-05 17:16:09 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.5/0.5 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for HANG_mini\n", + "2024-08-05 17:16:10 INFO base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} Calculating forecast div multiplier for HANG_mini\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'HANG_mini'} No mapping applied for HANG_mini\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'IG'} Calculating subsystem position for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'IG'} Calculating volatility scalar for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'IG'} Calculating instrument value vol for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'IG'} Calculating instrument currency vol for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Calculating combined forecast for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Calculating forecast weights for IG\n", + "2024-08-05 17:16:10 INFO base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Calculating raw forecast weights for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Using pooled gross returns\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Using pooled turnover cost SR for IG\n", + "2024-08-05 17:16:10 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for IG\n", + "2024-08-05 17:16:11 INFO base_system {'stage': 'combForecast', 'instrument_code': 'IG'} Calculating forecast div multiplier for IG\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'IG'} No mapping applied for IG\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'NASDAQ_micro'} Calculating subsystem position for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'NASDAQ_micro'} Calculating volatility scalar for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'NASDAQ_micro'} Calculating instrument value vol for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'NASDAQ_micro'} Calculating instrument currency vol for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Calculating combined forecast for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Calculating forecast weights for NASDAQ_micro\n", + "2024-08-05 17:16:11 INFO base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Calculating raw forecast weights for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Using pooled gross returns\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Using pooled turnover cost SR for NASDAQ_micro\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:11 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for NASDAQ_micro\n", + "2024-08-05 17:16:12 INFO base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} Calculating forecast div multiplier for NASDAQ_micro\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'NASDAQ_micro'} No mapping applied for NASDAQ_micro\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'R1000'} Calculating subsystem position for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'R1000'} Calculating volatility scalar for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'R1000'} Calculating instrument value vol for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'R1000'} Calculating instrument currency vol for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Calculating combined forecast for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Calculating forecast weights for R1000\n", + "2024-08-05 17:16:12 INFO base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Calculating raw forecast weights for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Using pooled gross returns\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Using pooled turnover cost SR for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for R1000\n", + "2024-08-05 17:16:12 INFO base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} Calculating forecast div multiplier for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'R1000'} No mapping applied for R1000\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'SP500_micro'} Calculating subsystem position for SP500_micro\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'SP500_micro'} Calculating volatility scalar for SP500_micro\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'SP500_micro'} Calculating instrument value vol for SP500_micro\n", + "2024-08-05 17:16:12 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'SP500_micro'} Calculating instrument currency vol for SP500_micro\n", + "2024-08-05 17:16:13 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Calculating combined forecast for SP500_micro\n", + "2024-08-05 17:16:13 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Calculating forecast weights for SP500_micro\n", + "2024-08-05 17:16:13 INFO base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Calculating raw forecast weights for SP500_micro\n", + "2024-08-05 17:16:13 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Using pooled gross returns\n", + "2024-08-05 17:16:13 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Using pooled turnover cost SR for SP500_micro\n", + "2024-08-05 17:16:13 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for SP500_micro\n", + "2024-08-05 17:16:14 INFO base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} Calculating forecast div multiplier for SP500_micro\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'SP500_micro'} No mapping applied for SP500_micro\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US-REALESTATE'} Calculating subsystem position for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US-REALESTATE'} Calculating volatility scalar for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US-REALESTATE'} Calculating instrument value vol for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US-REALESTATE'} Calculating instrument currency vol for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Calculating combined forecast for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Calculating forecast weights for US-REALESTATE\n", + "2024-08-05 17:16:14 INFO base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Calculating raw forecast weights for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Using pooled gross returns\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Using pooled turnover cost SR for US-REALESTATE\n", + "2024-08-05 17:16:14 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for US-REALESTATE\n", + "2024-08-05 17:16:15 INFO base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} Calculating forecast div multiplier for US-REALESTATE\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US-REALESTATE'} No mapping applied for US-REALESTATE\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US10'} Calculating subsystem position for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US10'} Calculating volatility scalar for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US10'} Calculating instrument value vol for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US10'} Calculating instrument currency vol for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Calculating combined forecast for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Calculating forecast weights for US10\n", + "2024-08-05 17:16:15 INFO base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Calculating raw forecast weights for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Using pooled gross returns\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Using pooled turnover cost SR for US10\n", + "2024-08-05 17:16:15 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for US10\n", + "2024-08-05 17:16:16 INFO base_system {'stage': 'combForecast', 'instrument_code': 'US10'} Calculating forecast div multiplier for US10\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US10'} No mapping applied for US10\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US30'} Calculating subsystem position for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US30'} Calculating volatility scalar for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US30'} Calculating instrument value vol for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US30'} Calculating instrument currency vol for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Calculating combined forecast for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Calculating forecast weights for US30\n", + "2024-08-05 17:16:16 INFO base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Calculating raw forecast weights for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Using pooled gross returns\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Using pooled turnover cost SR for US30\n", + "2024-08-05 17:16:16 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Applying cost multiplier of 2.000000\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.4/0.4 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Only this set of rules ['ewmac32', 'ewmac64', 'ewmac8'] is cheap enough to trade for US30\n", + "2024-08-05 17:16:17 INFO base_system {'stage': 'combForecast', 'instrument_code': 'US30'} Calculating forecast div multiplier for US30\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'combForecast', 'instrument_code': 'US30'} No mapping applied for US30\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Following instruments will have zero weight in optimisation of instrument weights as they have no positions (possibly too expensive?) []\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating pandl for subsystem for instrument BBCOMM\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BBCOMM'} Calculating buffers for BBCOMM\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BBCOMM'} Calculating forecast method buffers for BBCOMM\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating pandl for subsystem for instrument BUND\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BUND'} Calculating buffers for BUND\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'BUND'} Calculating forecast method buffers for BUND\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating pandl for subsystem for instrument DAX\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'DAX'} Calculating buffers for DAX\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'DAX'} Calculating forecast method buffers for DAX\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:17 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:16:18 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating pandl for subsystem for instrument GOLD_micro\n", + "2024-08-05 17:16:18 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'GOLD_micro'} Calculating buffers for GOLD_micro\n", + "2024-08-05 17:16:18 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'GOLD_micro'} Calculating forecast method buffers for GOLD_micro\n", + "2024-08-05 17:16:18 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:18 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating pandl for subsystem for instrument HANG_mini\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'HANG_mini'} Calculating buffers for HANG_mini\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'HANG_mini'} Calculating forecast method buffers for HANG_mini\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating pandl for subsystem for instrument IG\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'IG'} Calculating buffers for IG\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'IG'} Calculating forecast method buffers for IG\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating pandl for subsystem for instrument NASDAQ_micro\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'NASDAQ_micro'} Calculating buffers for NASDAQ_micro\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'NASDAQ_micro'} Calculating forecast method buffers for NASDAQ_micro\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating pandl for subsystem for instrument R1000\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'R1000'} Calculating buffers for R1000\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'R1000'} Calculating forecast method buffers for R1000\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:19 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating pandl for subsystem for instrument SP500_micro\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'SP500_micro'} Calculating buffers for SP500_micro\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'SP500_micro'} Calculating forecast method buffers for SP500_micro\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating pandl for subsystem for instrument US-REALESTATE\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US-REALESTATE'} Calculating buffers for US-REALESTATE\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US-REALESTATE'} Calculating forecast method buffers for US-REALESTATE\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating pandl for subsystem for instrument US10\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US10'} Calculating buffers for US10\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US10'} Calculating forecast method buffers for US10\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:20 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:16:21 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating pandl for subsystem for instrument US30\n", + "2024-08-05 17:16:21 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US30'} Calculating buffers for US30\n", + "2024-08-05 17:16:21 DEBUG base_system {'stage': 'positionSize', 'instrument_code': 'US30'} Calculating forecast method buffers for US30\n", + "2024-08-05 17:16:21 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating buffered subsystem positions\n", + "2024-08-05 17:16:21 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n", + "2024-08-05 17:16:27 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating raw instrument weights\n", + "2024-08-05 17:16:27 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Using only returns of asset for gross returns\n", + "2024-08-05 17:16:27 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Using unpooled cost SR for asset\n", + " [================================================================================] 100.0% Optimising weights (0.0/0.7/0.7 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:27 WARNING base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} *** Following instruments are listed as trading_restrictions and/or bad_markets but still included in instrument weight optimisation: ***\n", + "['IG', 'BBCOMM']\n", + "2024-08-05 17:16:27 WARNING base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} This is fine for dynamic systems where we remove them in later optimisation, but may be problematic for static systems\n", + "2024-08-05 17:16:27 WARNING base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Consider adding to config element allocate_zero_instrument_weights_to_these_instruments\n", + "2024-08-05 17:16:27 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Following instruments will have zero weight in optimisation of instrument weights as they have no positions (possibly too expensive?) []\n", + "2024-08-05 17:16:27 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating instrument div. multiplier\n", + "2024-08-05 17:16:27 INFO base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating instrument correlations\n", + " [================================================================================] 100.0% Estimating correlations (0.0/0.1/0.1 secs left/elapsed/total)\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating buffers for BBCOMM\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BBCOMM'} Calculating forecast method buffers for BBCOMM\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating buffered positions\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BBCOMM'} Calculating pandl for instrument for BBCOMM\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BBCOMM'} Calculating daily prices for BBCOMM\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating pandl for instrument for BUND\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BUND'} Calculating notional position for BUND\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BUND'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BUND'} Calculating buffers for BUND\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'BUND'} Calculating forecast method buffers for BUND\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating buffered positions\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'BUND'} Calculating pandl for instrument for BUND\n", + "2024-08-05 17:16:29 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'BUND'} Calculating daily prices for BUND\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating pandl for instrument for DAX\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'DAX'} Calculating notional position for DAX\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'DAX'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'DAX'} Calculating buffers for DAX\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'DAX'} Calculating forecast method buffers for DAX\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating buffered positions\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'DAX'} Calculating pandl for instrument for DAX\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'DAX'} Calculating daily prices for DAX\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating pandl for instrument for GOLD_micro\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'GOLD_micro'} Calculating notional position for GOLD_micro\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'GOLD_micro'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'GOLD_micro'} Calculating buffers for GOLD_micro\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'GOLD_micro'} Calculating forecast method buffers for GOLD_micro\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating buffered positions\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'GOLD_micro'} Calculating pandl for instrument for GOLD_micro\n", + "2024-08-05 17:16:30 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'GOLD_micro'} Calculating daily prices for GOLD_micro\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating pandl for instrument for HANG_mini\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'HANG_mini'} Calculating notional position for HANG_mini\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'HANG_mini'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'HANG_mini'} Calculating buffers for HANG_mini\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'HANG_mini'} Calculating forecast method buffers for HANG_mini\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating buffered positions\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'HANG_mini'} Calculating pandl for instrument for HANG_mini\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'HANG_mini'} Calculating daily prices for HANG_mini\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating pandl for instrument for IG\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'IG'} Calculating notional position for IG\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'IG'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'IG'} Calculating buffers for IG\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'IG'} Calculating forecast method buffers for IG\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating buffered positions\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'IG'} Calculating pandl for instrument for IG\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'IG'} Calculating daily prices for IG\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating pandl for instrument for NASDAQ_micro\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'NASDAQ_micro'} Calculating notional position for NASDAQ_micro\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'NASDAQ_micro'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'NASDAQ_micro'} Calculating buffers for NASDAQ_micro\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'NASDAQ_micro'} Calculating forecast method buffers for NASDAQ_micro\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating buffered positions\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'NASDAQ_micro'} Calculating pandl for instrument for NASDAQ_micro\n", + "2024-08-05 17:16:31 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'NASDAQ_micro'} Calculating daily prices for NASDAQ_micro\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating pandl for instrument for R1000\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'R1000'} Calculating notional position for R1000\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'R1000'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'R1000'} Calculating buffers for R1000\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'R1000'} Calculating forecast method buffers for R1000\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating buffered positions\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'R1000'} Calculating pandl for instrument for R1000\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'R1000'} Calculating daily prices for R1000\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating pandl for instrument for SP500_micro\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'SP500_micro'} Calculating notional position for SP500_micro\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'SP500_micro'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'SP500_micro'} Calculating buffers for SP500_micro\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'SP500_micro'} Calculating forecast method buffers for SP500_micro\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating buffered positions\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'SP500_micro'} Calculating pandl for instrument for SP500_micro\n", + "2024-08-05 17:16:32 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'SP500_micro'} Calculating daily prices for SP500_micro\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating pandl for instrument for US-REALESTATE\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US-REALESTATE'} Calculating notional position for US-REALESTATE\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US-REALESTATE'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US-REALESTATE'} Calculating buffers for US-REALESTATE\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US-REALESTATE'} Calculating forecast method buffers for US-REALESTATE\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating buffered positions\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US-REALESTATE'} Calculating pandl for instrument for US-REALESTATE\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US-REALESTATE'} Calculating daily prices for US-REALESTATE\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating pandl for instrument for US10\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US10'} Calculating notional position for US10\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US10'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US10'} Calculating buffers for US10\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US10'} Calculating forecast method buffers for US10\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating buffered positions\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US10'} Calculating pandl for instrument for US10\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US10'} Calculating daily prices for US10\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating pandl for instrument for US30\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US30'} Calculating notional position for US30\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US30'} No risk overlay in config: won't apply risk scaling\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US30'} Calculating buffers for US30\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'portfolio', 'instrument_code': 'US30'} Calculating forecast method buffers for US30\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating buffered positions\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'accounts', 'instrument_code': 'US30'} Calculating pandl for instrument for US30\n", + "2024-08-05 17:16:33 DEBUG base_system {'stage': 'rawdata', 'instrument_code': 'US30'} Calculating daily prices for US30\n" + ] + }, + { + "data": { + "text/plain": [ + "[[('min', '-9.698'),\n", + " ('max', '6.964'),\n", + " ('median', '0.01372'),\n", + " ('mean', '0.03201'),\n", + " ('std', '0.8325'),\n", + " ('skew', '-0.4188'),\n", + " ('ann_mean', '8.195'),\n", + " ('ann_std', '13.32'),\n", + " ('sharpe', '0.6152'),\n", + " ('sortino', '0.7476'),\n", + " ('avg_drawdown', '-12.74'),\n", + " ('time_in_drawdown', '0.9601'),\n", + " ('calmar', '0.202'),\n", + " ('avg_return_to_drawdown', '0.6434'),\n", + " ('avg_loss', '-0.5182'),\n", + " ('avg_gain', '0.533'),\n", + " ('gaintolossratio', '1.029'),\n", + " ('profitfactor', '1.131'),\n", + " ('hitrate', '0.5238'),\n", + " ('t_stat', '4.363'),\n", + " ('p_value', '1.294e-05')],\n", + " ('You can also plot / print:',\n", + " ['rolling_ann_std', 'drawdown', 'curve', 'percent'])]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "\"\"\"\n", + "Let's recap:\n", + "\n", + "We got some data and created a trading rule\n", + "\"\"\"\n", + "from sysdata.sim.db_futures_sim_data import dbFuturesSimData\n", + "data = dbFuturesSimData()\n", + "from systems.provided.rules.ewmac import ewmac_forecast_with_defaults as ewmac\n", + "from systems.forecasting import Rules\n", + "from systems.basesystem import System\n", + "from systems.trading_rules import TradingRule\n", + "from sysdata.config.configdata import Config\n", + "from systems.forecast_scale_cap import ForecastScaleCap\n", + "from systems.forecast_combine import ForecastCombine\n", + "from systems.accounts.accounts_stage import Account\n", + "from systems.rawdata import RawData\n", + "from systems.positionsizing import PositionSizing\n", + "from systems.portfolio import Portfolios\n", + "\n", + "ewmac_8 = TradingRule((ewmac, [], dict(Lfast=8, Lslow=32)))\n", + "ewmac_32 = TradingRule(dict(function=ewmac, other_args=dict(Lfast=32, Lslow=128)))\n", + "ewmac_64 = TradingRule(dict(function=ewmac, other_args=dict(Lfast=64)))\n", + "my_rules = Rules(dict(ewmac8=ewmac_8, ewmac32=ewmac_32, ewmac64=ewmac_64))\n", + "\n", + "my_config = Config()\n", + "my_config\n", + "\n", + "# empty_rules = Rules()\n", + "# my_config.trading_rules = dict(ewmac8=ewmac_8, ewmac32=ewmac_32)\n", + "# my_system = System([empty_rules], data, my_config)\n", + "# my_system.rules.get_raw_forecast(\"SOFR\", \"ewmac32\").tail(5)\n", + "\n", + "# For GPM\n", + "#IEF - US10\n", + "#GLD - GOLD\n", + "#PDBC - BBCOMM\n", + "#EWJ - Japan?\n", + "#TLT - US30Y_micro\n", + "#VNQ - US-REALESTATE\n", + "# QQQ - NASDAQ_micro\n", + "#LQD - IG\n", + "#VGK - European? DAX?\n", + "#IWM - miccros/small\n", + "#HYG - high-yield\n", + "#SPY - SPY_micro\n", + "\n", + "#Try to replicate Faber approximately\n", + "# Asset\tAllocation\tChange\n", + "# International Treasuries\t5.0%\t-\n", + "## BUND ? (German 10 year)\n", + "# Emerging Market Equities\t10.0%\t-\n", + "## HANG_mini ? (Chinese stocks)\n", + "# International Equities\t10.0%\t-\n", + "## DAX (German stocks)\n", + "# Gold\t10.0%\t-\n", + "## GOLD_micro\n", + "# Int-Term US Treasuries\t5.0%\t-\n", + "## US10\n", + "# US Large Cap Value\t5.0%\t\n", + "## SP500-VALUE\t\n", + "# US Small Cap Value\t5.0%\t-\n", + "## SP600-SMALL\n", + "# US Corporate Bonds\t5.0%\t-\n", + "## IG\n", + "# US Momentum\t10.0%\t-\n", + "## SP500_micro\n", + "# Long-Term US Treasuries\t5.0%\t\n", + "## US30Y_micro\n", + "# US Real Estate\t20.0%\t-\n", + "## US-REALESTATE\n", + "# Commodities\n", + "## BBCOMM\n", + "# QQQ\n", + "## NASDAQ_micro\n", + "\n", + "# we can estimate these ourselves\n", + "my_config.instruments = [\"BUND\", \"HANG_mini\", \"DAX\", \"GOLD_micro\", \"US10\", \"R1000\", \"IG\",\"SP500_micro\", \"US30\", \"US-REALESTATE\", \"BBCOMM\", \"NASDAQ_micro\"]\n", + "my_config.use_forecast_scale_estimates = True\n", + "\n", + "fcs = ForecastScaleCap()\n", + "combiner = ForecastCombine()\n", + "my_account = Account()\n", + "combiner = ForecastCombine()\n", + "raw_data = RawData()\n", + "position_size = PositionSizing()\n", + "possizer = PositionSizing()\n", + "portfolio = Portfolios()\n", + "\n", + "my_config.percentage_vol_target = 15\n", + "my_config.notional_trading_capital = 10000000\n", + "my_config.base_currency = \"USD\"\n", + "my_config.forecast_weight_estimate = dict(method=\"one_period\")\n", + "my_config.use_instrument_weight_estimates = True\n", + "my_config.use_instrument_div_mult_estimates = True\n", + "my_config.use_forecast_weight_estimates = True\n", + "my_config.use_forecast_div_mult_estimates = True\n", + "my_config.forecast_floor = 0\n", + "\n", + "#my_config.capital_multiplier['func'] = 'syscore.capital.full_compounding'\n", + "\n", + "\n", + "my_system = System(\n", + " [my_account, fcs, my_rules, combiner, possizer, portfolio, raw_data],\n", + " data,\n", + " my_config,\n", + ")\n", + "\n", + "# print(my_system.combForecast.get_forecast_weights(\"SOFR\").tail(5))\n", + "# # or we can use the values from the book\n", + "# my_config.forecast_scalars = dict(ewmac8=5.3, ewmac32=2.65)\n", + "# my_config.use_forecast_scale_estimates = False\n", + "# fcs = ForecastScaleCap()\n", + "# my_system = System([fcs, my_rules], data, my_config)\n", + "# print(my_system.forecastScaleCap.get_capped_forecast(\"SOFR\", \"ewmac32\").tail(5))\n", + "my_system.accounts.portfolio().percent.stats()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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DQ0NjY6BNmw0NDQ0NDQ0OgbasNHQ0NDQ0NDoGGjDxgN33HEHXv3qV2PBggUwDAO//vWvhe83btyIs88+GwsWLEBPTw/OOOMMPPXUU/z75557DoZhKP/deOONfLtbb70Vxx13HPr7+zF//nx84hOfQLVabZvzAIANGzbg3e9+N+bPn4/e3l4cdthh+OUvf6k8XqlUwiGHHALDMLBixYppdx4PPPAAXv7yl2PGjBmYPXs23v/+92NsbKytzuPpp5/G61//egwNDWFgYABvectbsHHjRuXxkrofaZ5L0vfksssuw5FHHon+/n7MnTsXr3vd67Bq1Sphm6mpKVxwwQWYPXs2+vr68MY3vtHRzhdeeAFnnnkmenp6MHfuXHzsYx9zfZb/+c9/IpfL4ZBDDpmW5/Gtb30L++67L7q7u7HPPvvgxz/+cdudx4c+9CEcfvjhKBaLvtd59erV6O/vx4wZM6bledxwww045JBD0NPTgyVLluDyyy+P7TziOpeHHnoIb3/727Fo0SJ0d3dj3333xTe+8Q3XY0Z9RrRh44Hx8XEcfPDB+Na3vuX4zjRNvO51r8MzzzyD3/zmN3jwwQexZMkSnHrqqRgfHwdg1a9av3698O/SSy9FX18fXvGKVwCwbvQrX/lKnHHGGXjwwQdx/fXX47e//S0uvvjitjkPADjrrLOwatUq/Pa3v8UjjzyCN7zhDXjLW96CBx980LHPj3/841iwYEFs7U/zPNatW4dTTz0Ve+65J+655x786U9/wmOPPYazzz67bc5jfHwcp512GgzDwG233YZ//vOfKJfLePWrX416ve7YZ1L3I61zSeOe/O1vf8MFF1yAu+++G7fccgsqlQpOO+00oe985CMfwe9+9zvceOON+Nvf/oZ169bhDW94A/++VqvhzDPPRLlcxp133olrr70W11xzDT7zmc84jrdjxw6cddZZOOWUU2I7hzTP4zvf+Q6WL1+Oz372s3jsscdw6aWX4oILLsDvfve7tjkPhve+971461vf6nm8SqWCt7/97TjhhBNiaX/a5/HHP/4R73znO3Heeefh0Ucfxbe//W18/etfxze/+c22Opf7778fc+fOxU9+8hM89thj+OQnP4nly5cr29nUM2JqBAIA81e/+hV/v2rVKhOA+eijj/LParWaOTQ0ZP7gBz9w3c8hhxxivve97+Xvly9fbh5xxBHCNr/97W/Nrq4uc2RkJL4TaCDqefT29po//vGPhX3NmjXLca5/+MMfzGXLlpmPPfaYCcB88MEHYz+HJM/je9/7njl37lyzVqvx7x9++GETgPnUU0+1xXncfPPNZiaTMYeHh/k2O3bsMA3DMG+55RZh/2ndjyTPJe17YpqmuWnTJhOA+be//Y23KZ/PmzfeeCPf5oknnjABmHfddZdpmta1zmQy5oYNG/g23/nOd8yBgQGzVCoJ+3/rW99qfupTnzIvueQS8+CDD07kHJI8j2OPPdb86Ec/KhzrwgsvNI8//vi2OQ8Kv+v88Y9/3HzXu95lXn311ebg4GDczedI6jze/va3m29605uEz/7nf/7HXLhwoVmv1+M9iQaaPReG888/3zz55JMdnzfzjGjGJiJKpRIAoKuri3+WyWRQLBbxj3/8Q/mb+++/HytWrMD73vc+YT90HwDQ3d2Nqakp3H///Qm0XETQ8zjuuONw/fXXY9u2bajX6/j5z3+OqakpnHTSSXybjRs34pxzzsF1112Hnp6exNtOEdd5lEolFAoFoSBbd3c3ALje17TPo1QqwTAMIdlVV1cXMpmM0MZW3g/WTtY2hijn0op7Mjw8DACYNWsWAOvZrVQqOPXUU/k2y5Ytw+LFi3HXXXcBAO666y4ceOCBmDdvHt/m9NNPx8jICB577DH+2dVXX41nnnkGl1xySSJtT+M83Mate++9F5VKpS3OIyhuu+023HjjjUrWMW4kdR5u9+PFF1/E888/H0PLnYjrXIaHh/k+GJp9RrRhExHshi1fvhzbt29HuVzGl7/8Zbz44otYv3698jc/+tGPsO++++K4447jn51++um488478bOf/Qy1Wg1r167F5z73OQBw3U8rzuOGG25ApVLB7NmzUSwWce655+JXv/oV9txzTwCW2+Hss8/GeeedhyOOOCLxdid1Hi972cuwYcMGXH755SiXy9i+fTt3C7bL/TjmmGPQ29uLT3ziE5iYmMD4+Dg++tGPolar8W1afT/iPJe070m9XseHP/xhHH/88TjggAMAWNqsQqHg0F/MmzcPGzZs4NtQY4B9z74DgKeeegoXX3wxfvKTnyCXS7YGcZLncfrpp+OHP/wh7r//fpimifvuuw8//OEPUalUsGXLlrY4jyDYunUrzj77bFxzzTWJp/pP8jxOP/103HTTTbj11ltRr9fx5JNP4qtf/SqA9npGZNx55524/vrr8f73v59/Fsczog2biMjn87jpppvw5JNPYtasWejp6cHtt9+OV7ziFcry65OTk/jf//1fga0BgNNOOw2XX345zjvvPBSLRey999545StfCQCxlnFv9jw+/elPY8eOHfjLX/6C++67DxdeeCHe8pa34JFHHgEAXHnllRgdHcXy5csTb3OS57H//vvj2muvxVe/+lX09PRg/vz52H333TFv3ry2uR9DQ0O48cYb8bvf/Q59fX0YHBzEjh07cNhhh/FtWn0/4jyXtO/JBRdcgEcffRQ///nPY91vrVbDO97xDlx66aXYe++9Y923CkmdB2A9R694xStwzDHHIJ/P47WvfS3+7d/+DUD841aS53HOOefgHe94B0488cTY9y0j6fP44Ac/iFe96lUoFAo45phj8La3vQ1AMvNIHOfy6KOP4rWvfS0uueQSnHbaaQBifEZCOa52YkDSD1Ds2LHD3LRpk2mapnnUUUeZ559/vmObH//4x2Y+n+fbyajX6+batWvNiYkJ8/HHHzcBmPfee29s7WeIch6rV692aCVM0zRPOeUU89xzzzVN0zRf+9rXmplMxsxms/wfADObzZpnnXXWtDkPig0bNpijo6Pm2NiYmclkzBtuuCHekzCb71ebN282t2/fbpqmac6bN8/8yle+Yppm+vcjyXOhSPqeXHDBBebChQvNZ555Rvj81ltvNQHw9jEsXrzY/NrXvmaapml++tOfdmgBnnnmGROA+cADD5jbt2/n94D9MwyDf3brrbdOi/OgKJfL5po1a8xqtWp++9vfNvv7+wUtVCvPg8JNpzE4OCjcj0wmw+/Hj370o2lzHgzVatV88cUXzVKpZP7hD38wAbjOOVERx7k89thj5ty5c83//M//FD6P6xnRhk1AeA3aDE8++aSZyWTMm2++2fHdS1/6UvONb3xjoGN9+tOfNhctWmRWq9UoTfVElPNgQs3HH39c2O60004zzznnHNM0TfP55583H3nkEf7v5ptvNgGYv/jFL8w1a9ZMm/NQ4Uc/+pHZ09PjeGDjQLP9iuHWW281DcMwV65caZpm+vfDNJM7FxXivif1et284IILzAULFphPPvmk43smjPzFL37BP1u5cqVSdLtx40a+zfe+9z1zYGDAnJqaMmu1mnBPHnnkEfMDH/iAuc8++5iPPPKIOTY2Ni3Oww0nnnii+fa3v73pc4jrPCjcDILHH39cuB9f+MIXzP7+fvORRx4xt23bNm3OQ4V3v/vd5rHHHhu57TLiOpdHH33UnDt3rvmxj33MsY+4nhFt2HhgdHTUfPDBB80HH3zQBGB+7WtfMx988EHz+eefN03TNG+44Qbz9ttvN59++mnz17/+tblkyRLzDW94g2M/Tz31lGkYhvnHP/5ReZyvfOUr5sMPP2w++uij5uc+9zkzn8/7ThBpnke5XDb33HNP84QTTjDvuecec/Xq1eYVV1xhGoZh/v73v1ce89lnn409Ciet87jyyivN+++/31y1apX5zW9+0+zu7ja/8Y1vtM15mKZpXnXVVeZdd91lrl692rzuuuvMWbNmmRdeeKHrMZO4H2meS9L35AMf+IA5ODho/vWvfzXXr1/P/01MTPBtzjvvPHPx4sXmbbfdZt53333mscceK0wc1WrVPOCAA8zTTjvNXLFihfmnP/3JHBoaMpcvX+563LijotI6j1WrVpnXXXed+eSTT5r33HOP+da3vtWcNWuW+eyzz7bNeZimNfY++OCD5rnnnmvuvffevK/KUWoMcUdFpXUemzdvNr/zne+YTzzxhPnggw+aH/rQh8yuri7znnvuaatzeeSRR8yhoSHzXe96l7APL1YpyjOiDRsP3H777SYAx79/+7d/M03TNL/xjW+YCxcuNPP5vLl48WLzU5/6lPKBWb58ublo0SJXivbkk082BwcHza6uLvPoo482//CHP7TdeTz55JPmG97wBnPu3LlmT0+PedBBBznCpimSmEjTOo93v/vd5qxZs8xCoeB7nq06j0984hPmvHnzzHw+b+61117mV7/6Vc+wzqQMm7TOJel7ojoHAObVV1/Nt5mcnDTPP/98c+bMmWZPT4/5+te/3ly/fr2wn+eee858xSteYXZ3d5tz5swxL7roIrNSqbgeN27DJq3zePzxx81DDjnE7O7uNgcGBszXvva1ngxbq87jpS99qXI/bgZY3IZNWuexefNm85hjjjF7e3vNnp4e85RTTjHvvvvu2M4jrnO55JJLlPtYsmSJ63GjPCNGo8EaGhoaGhoaGtMeOipKQ0NDQ0NDo2OgDRsNDQ0NDQ2NjoE2bDQ0NDQ0NDQ6Btqw0dDQ0NDQ0OgYaMNGQ0NDQ0NDo2OgDRsNDQ0NDQ2NjoE2bDQ0NDQ0NDQ6Btqw0dDQ0NDQ0OgYaMNGQ0NDQ0NDo2OgDRsNDQ0NDQ2NjoE2bDQ0NDQ0NDQ6Btqw0dDQ0NDQ0OgY/H9oTJnXj3ldjwAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_system.accounts.portfolio().percent.monthly.drawdown().plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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ZL84W5iVPPfzUWxKzRFnkPV256+eiIjIEPagWMmm1KpJ6KonanPna8ZEREQG8VvSRjgPChERkWH8lrQRJxkXCyQiIjKECYqN7Ltww9YhEBER2S0mKDYS00v/tP5ERETEBMVmIjv52zoEIiIiu8UExUY8XJ1tHQIREZHdYoJCREREdocJig1sfXG4rUMgIiKya0xQrKDuckfdgn1sFAkREZFjYIJiBRVqrbj9f0M72jASIiIix8AExQpqd6A8ENHedoEQERE5CCYoVqCplaF0CvCyYSRERESOgQmKFag1NY94XJw4xT0REVFDmKBYgervMSjOTjK4OPNXTkRE1BB+W1pB9SBZNyYnRERERuE3phWICYoLf91ERETG4DemFVSoNQAAdyYoRERERuE3phWo2INCRERkEn5jWkH1Ix72oBARERmH35gWVqnR4lD6LQCAmwtXMCYiIjKGi60DaO4+/OscViReBMAeFCIiImPxG9PCqpMTgGNQiIiIjMVvTCtiDwoREZFx+I1pRUxQiIiIjMNvTCviIx4iIiLj8BvTgoRaqxgDwKH0fBtFQkRE5FiYoFhQ9evF1W4UV9goEiIiIsfCBMWCHvrygK1DICIickhMUMzgk+3nMWfNcZ1HOnW9MLqrlSIiIiJybExQzGBpwjmsSb6C41cKxbLC0kqdeiO6BVgzLCIiIofFBMWMylQacftGie54kztCW1szHCIiIofFqe4tRKOtedyzbfbdCPXztGE0REREjoUJShPVHndSe1v19wrGANAl0NuqMRERETk6JihNsHjTGbg61zwlc3aSidvf7c+wQURERETNAxOURsouKMMXuy9JylycaxKUhDO51g6JiIio2eAg2UaqPcakWkWlFmM/2o2Xfz2OJ4Z0tEFUREREzQN7UBqpdm9JtU0nr+FsThHO5hTh3r7tAAAxPYOsHRoREZHDYw9KI5XWeqW4WqW6plflj+PZAAAvN+aAREREpmKC0khlehIUrZ6ZZD3cnK0RDhERUbPCBKWRyip1E5RbJSqdslUHM60RDhERUbPCBMUEtec5yVWW6xzffjbPmuEQERE1W0xQjHTiSgHufHc7fj2SBQB4fe1Jo87b8uIwS4ZFRETULHEEp5Fe/CUFN4or8Mr/TuDBASEoLNNdDLC2nf8agZDWreDizByQiIjIVExQjFRaoTvmxJCYnkHo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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_system.accounts.portfolio().percent.curve().plot()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/kaufman_er_10_20_40.png b/kaufman_er_10_20_40.png new file mode 100644 index 0000000000..399a3b3db8 Binary files /dev/null and b/kaufman_er_10_20_40.png differ diff --git a/sysbrokers/IB/config/ib_config_futures.csv b/sysbrokers/IB/config/ib_config_futures.csv index 2fc2e84e4e..a3cafce3d7 100644 --- a/sysbrokers/IB/config/ib_config_futures.csv +++ b/sysbrokers/IB/config/ib_config_futures.csv @@ -511,19 +511,19 @@ URANIUM,UX,COMEX,USD,250,1,FALSE US-BIOTECH,SPSIBI,CME,USD,10,1,FALSE US-DISCRETE,IXY,CME,USD,100,1,FALSE US-ENERGY,IXE,CME,USD,100,1,FALSE -US-FINANCE,IXM,CME,USD,250,1,FALSE +US-FINANCE,SIXM,CME,USD,250,1,FALSE US-HEALTH,IXV,CME,USD,100,1,FALSE US-INDUSTRY,IXI,CME,USD,100,1,FALSE US-INSURE,SPSIINS,CME,USD,25,1,FALSE US-MATERIAL,IXB,CME,USD,100,1,FALSE US-OILGAS,SPSIOP,CME,USD,25,1,FALSE -US-PROPERTY,IXRE,CME,USD,250,1,FALSE +US-PROPERTY,SIXRE,CME,USD,250,1,FALSE US-REALESTATE,DJUSRE,CBOT,USD,100,1,FALSE US-REGBANK,SPSIRBK,CME,USD,50,1,FALSE US-RETAIL,SPSIRE,CME,USD,10,1,FALSE US-SEMICONDUCTOR,SPSOX,CME,USD,25,1,FALSE US-STAPLES,IXR,CME,USD,100,1,FALSE -US-TECH,IXT,CME,USD,100,1,FALSE +US-TECH,SIXT,CME,USD,100,1,FALSE US-UTILS,IXU,CME,USD,100,1,FALSE US10,ZN,CBOT,NA,1000,1,FALSE US10U,TN,CBOT,USD,1000,1,FALSE diff --git a/sysproduction/linux/scripts/email.log b/sysproduction/linux/scripts/email.log new file mode 100755 index 0000000000..f4ebc1fc7e --- /dev/null +++ b/sysproduction/linux/scripts/email.log @@ -0,0 +1,54 @@ +******************************************************************************** +Email stored not sent on 2024-06-25 14:39:04.219666: Price Spike GAS_US_mini + +To reduce email load, won't send any more emails with this subject today. Use 'interactive_diagnostics', 'Emails' to see stored messages +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-06-25 14:39:04.224029: Price Spike GAS_US_mini + +Spike found in prices for GAS_US_mini/20241100: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-06-25 20:47:22.010333: Price Spike GAS_US_mini + +Spike found in prices for GAS_US_mini/20241100: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-07-03 10:23:35.457678: Price Spike MILKDRY + +Spike found in prices for MILKDRY/20250300: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-07-03 10:32:36.330875: Price Spike NIKKEI400 + +Spike found in prices for NIKKEI400/20241200: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-07-05 10:14:40.444751: Price Spike MILKDRY + +Spike found in prices for MILKDRY/20250300: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-07-05 10:23:34.692150: Price Spike NIKKEI400 + +Spike found in prices for NIKKEI400/20241200: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-07-05 20:23:03.629027: Price Spike MILKDRY + +Spike found in prices for MILKDRY/20250300: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + +******************************************************************************** +Email stored not sent on 2024-07-05 20:34:50.462412: Price Spike NIKKEI400 + +Spike found in prices for NIKKEI400/20241200: need to manually check by running interactive_manual_check_historical_prices +******************************************************************************** + diff --git a/sysproduction/strategy_code/run_dynamic_optimised_system_repo.py b/sysproduction/strategy_code/run_dynamic_optimised_system_repo.py new file mode 100644 index 0000000000..7b266f69a7 --- /dev/null +++ b/sysproduction/strategy_code/run_dynamic_optimised_system_repo.py @@ -0,0 +1,159 @@ +import datetime +from syscore.constants import arg_not_supplied + +from sysdata.config.configdata import Config +from sysdata.data_blob import dataBlob +from sysobjects.production.optimal_positions import ( + optimalPositionWithReference, +) +from sysobjects.production.tradeable_object import instrumentStrategy + +from sysproduction.data.sim_data import get_sim_data_object_for_production +from sysproduction.strategy_code.run_system_classic import ( + runSystemClassic, +) +from sysproduction.data.contracts import dataContracts +from sysproduction.data.optimal_positions import dataOptimalPositions +from sysproduction.data.backtest import store_backtest_state + +from syslogging.logger import * + +from systems.basesystem import System + + +class runSystemCarryTrendDynamic(runSystemClassic): + # DO NOT CHANGE THE NAME OF THIS FUNCTION; IT IS HARDCODED INTO CONFIGURATION FILES + # BECAUSE IT IS ALSO USED TO LOAD BACKTESTS + def system_method( + self, + notional_trading_capital: float = arg_not_supplied, + base_currency: str = arg_not_supplied, + ) -> System: + data = self.data + backtest_config_filename = self.backtest_config_filename + + system = dynamic_system( + data, + backtest_config_filename, + log=data.log, + notional_trading_capital=notional_trading_capital, + base_currency=base_currency, + ) + + return system + + @property + def function_to_call_on_update(self): + return updated_optimal_positions_for_dynamic_system + + +def dynamic_system( + data: dataBlob, + config_filename: str, + log=get_logger("futures_system"), + notional_trading_capital: float = arg_not_supplied, + base_currency: str = arg_not_supplied, +) -> System: + sim_data = get_sim_data_object_for_production(data) + config = Config(config_filename) + + # Overwrite capital and base currency + if notional_trading_capital is not arg_not_supplied: + config.notional_trading_capital = notional_trading_capital + + if base_currency is not arg_not_supplied: + config.base_currency = base_currency + + system = futures_system(data=sim_data, config=config) + system._log = log + + return system + + +from systems.forecasting import Rules +from systems.basesystem import System +from systems.forecast_combine import ForecastCombine +from systems.forecast_scale_cap import ForecastScaleCap +from systems.rawdata import RawData +from systems.positionsizing import PositionSizing +from systems.portfolio import Portfolios +from systems.provided.dynamic_small_system_optimise.optimised_positions_stage import ( + optimisedPositions, +) +from systems.risk import Risk +from systems.provided.dynamic_small_system_optimise.accounts_stage import ( + accountForOptimisedStage, +) + + +def futures_system(data, config): + system = System( + [ + Risk(), + accountForOptimisedStage(), + optimisedPositions(), + Portfolios(), + PositionSizing(), + RawData(), + ForecastCombine(), + ForecastScaleCap(), + Rules(), + ], + data, + config, + ) + + return system + + +def updated_optimal_positions_for_dynamic_system( + data: dataBlob, strategy_name: str, system: System +): + log = data.log + + data_optimal_positions = dataOptimalPositions(data) + + list_of_instruments = system.get_instrument_list() + for instrument_code in list_of_instruments: + position_entry = construct_optimal_position_entry( + data=data, + system=system, + instrument_code=instrument_code, + ) + instrument_strategy = instrumentStrategy( + instrument_code=instrument_code, strategy_name=strategy_name + ) + data_optimal_positions.update_optimal_position_for_instrument_strategy( + instrument_strategy=instrument_strategy, + raw_positions=True, + position_entry=position_entry, + ) + + log.debug("New Optimal position %s %s" % (str(position_entry), instrument_code)) + + +def construct_optimal_position_entry( + data: dataBlob, system: System, instrument_code: str +) -> optimalPositionWithReference: + diag_contracts = dataContracts(data) + + optimal_position = get_optimal_position_from_system(system, instrument_code) + + reference_price = system.rawdata.get_daily_prices(instrument_code).iloc[-1] + reference_date = system.rawdata.get_daily_prices(instrument_code).index[-1] + reference_contract = diag_contracts.get_priced_contract_id(instrument_code) + position_entry = optimalPositionWithReference( + date=datetime.datetime.now(), + optimal_position=optimal_position, + reference_price=reference_price, + reference_contract=reference_contract, + reference_date=reference_date, + ) + + return position_entry + + +def get_optimal_position_from_system(system: System, instrument_code: str) -> float: + optimal_position = system.portfolio.get_notional_position(instrument_code) + + return float(optimal_position.iloc[-1]) diff --git a/systems/provided/rob_system/run_system_repo.py b/systems/provided/rob_system/run_system_repo.py new file mode 100644 index 0000000000..5a28faa65a --- /dev/null +++ b/systems/provided/rob_system/run_system_repo.py @@ -0,0 +1,57 @@ +""" +import matplotlib +matplotlib.use("TkAgg") +""" +from syscore.constants import arg_not_supplied + +# from sysdata.sim.csv_futures_sim_data import csvFuturesSimData +from sysdata.sim.db_futures_sim_data import dbFuturesSimData +from sysdata.config.configdata import Config + +from systems.forecasting import Rules +from systems.basesystem import System +from systems.forecast_combine import ForecastCombine +from systems.provided.attenuate_vol.vol_attenuation_forecast_scale_cap import ( + volAttenForecastScaleCap, +) +from systems.provided.rob_system.rawdata import myFuturesRawData +from systems.positionsizing import PositionSizing +from systems.portfolio import Portfolios +from systems.provided.dynamic_small_system_optimise.optimised_positions_stage import ( + optimisedPositions, +) +from systems.risk import Risk +from systems.provided.dynamic_small_system_optimise.accounts_stage import ( + accountForOptimisedStage, +) + + +def futures_system( + sim_data=arg_not_supplied, config_filename="systems.provided.rob_system.config.yaml", + rules = arg_not_supplied +): + if sim_data is arg_not_supplied: + sim_data = dbFuturesSimData() + + config = Config(config_filename) + + if rules is arg_not_supplied: + rules = Rules() + + system = System( + [ + Risk(), + accountForOptimisedStage(), + optimisedPositions(), + Portfolios(), + PositionSizing(), + myFuturesRawData(), + ForecastCombine(), + volAttenForecastScaleCap(), + rules, + ], + sim_data, + config, + ) + + return system diff --git a/ter b/ter new file mode 100644 index 0000000000..333a0b576c --- /dev/null +++ b/ter @@ -0,0 +1,258 @@ + + SSUUMMMMAARRYY OOFF LLEESSSS CCOOMMMMAANNDDSS + + Commands marked with * may be preceded by a number, _N. + Notes in parentheses indicate the behavior if _N is given. + A key preceded by a caret indicates the Ctrl key; thus ^K is ctrl-K. + + h H Display this help. + q :q Q :Q ZZ Exit. + --------------------------------------------------------------------------- + + MMOOVVIINNGG + + e ^E j ^N CR * Forward one line (or _N lines). + y ^Y k ^K ^P * Backward one line (or _N lines). + f ^F ^V SPACE * Forward one window (or _N lines). + b ^B ESC-v * Backward one window (or _N lines). + z * Forward one window (and set window to _N). + w * Backward one window (and set window to _N). + ESC-SPACE * Forward one window, but don't stop at end-of-file. + d ^D * Forward one half-window (and set half-window to _N). + u ^U * Backward one half-window (and set half-window to _N). + ESC-) RightArrow * Right one half screen width (or _N positions). + ESC-( LeftArrow * Left one half screen width (or _N positions). + ESC-} ^RightArrow Right to last column displayed. + ESC-{ ^LeftArrow Left to first column. + F Forward forever; like "tail -f". + ESC-F Like F but stop when search pattern is found. + r ^R ^L Repaint screen. + R Repaint screen, discarding buffered input. + --------------------------------------------------- + Default "window" is the screen height. + Default "half-window" is half of the screen height. + --------------------------------------------------------------------------- + + SSEEAARRCCHHIINNGG + + /_p_a_t_t_e_r_n * Search forward for (_N-th) matching line. + ?_p_a_t_t_e_r_n * Search backward for (_N-th) matching line. + n * Repeat previous search (for _N-th occurrence). + N * Repeat previous search in reverse direction. + ESC-n * Repeat previous search, spanning files. + ESC-N * Repeat previous search, reverse dir. & spanning files. + ESC-u Undo (toggle) search highlighting. + ESC-U Clear search highlighting. + &_p_a_t_t_e_r_n * Display only matching lines. + --------------------------------------------------- + A search pattern may begin with one or more of: + ^N or ! Search for NON-matching lines. + ^E or * Search multiple files (pass thru END OF FILE). + ^F or @ Start search at FIRST file (for /) or last file (for ?). + ^K Highlight matches, but don't move (KEEP position). + ^R Don't use REGULAR EXPRESSIONS. + ^W WRAP search if no match found. + --------------------------------------------------------------------------- + + JJUUMMPPIINNGG + + g < ESC-< * Go to first line in file (or line _N). + G > ESC-> * Go to last line in file (or line _N). + p % * Go to beginning of file (or _N percent into file). + t * Go to the (_N-th) next tag. + T * Go to the (_N-th) previous tag. + { ( [ * Find close bracket } ) ]. + } ) ] * Find open bracket { ( [. + ESC-^F _<_c_1_> _<_c_2_> * Find close bracket _<_c_2_>. + ESC-^B _<_c_1_> _<_c_2_> * Find open bracket _<_c_1_>. + --------------------------------------------------- + Each "find close bracket" command goes forward to the close bracket + matching the (_N-th) open bracket in the top line. + Each "find open bracket" command goes backward to the open bracket + matching the (_N-th) close bracket in the bottom line. + + m_<_l_e_t_t_e_r_> Mark the current top line with . + M_<_l_e_t_t_e_r_> Mark the current bottom line with . + '_<_l_e_t_t_e_r_> Go to a previously marked position. + '' Go to the previous position. + ^X^X Same as '. + ESC-M_<_l_e_t_t_e_r_> Clear a mark. + --------------------------------------------------- + A mark is any upper-case or lower-case letter. + Certain marks are predefined: + ^ means beginning of the file + $ means end of the file + --------------------------------------------------------------------------- + + CCHHAANNGGIINNGG FFIILLEESS + + :e [_f_i_l_e] Examine a new file. + ^X^V Same as :e. + :n * Examine the (_N-th) next file from the command line. + :p * Examine the (_N-th) previous file from the command line. + :x * Examine the first (or _N-th) file from the command line. + :d Delete the current file from the command line list. + = ^G :f Print current file name. + --------------------------------------------------------------------------- + + MMIISSCCEELLLLAANNEEOOUUSS CCOOMMMMAANNDDSS + + -_<_f_l_a_g_> Toggle a command line option [see OPTIONS below]. + --_<_n_a_m_e_> Toggle a command line option, by name. + __<_f_l_a_g_> Display the setting of a command line option. + ___<_n_a_m_e_> Display the setting of an option, by name. + +_c_m_d Execute the less cmd each time a new file is examined. + + !_c_o_m_m_a_n_d Execute the shell command with $SHELL. + |XX_c_o_m_m_a_n_d Pipe file between current pos & mark XX to shell command. + s _f_i_l_e Save input to a file. + v Edit the current file with $VISUAL or $EDITOR. + V Print version number of "less". + --------------------------------------------------------------------------- + + OOPPTTIIOONNSS + + Most options may be changed either on the command line, + or from within less by using the - or -- command. + Options may be given in one of two forms: either a single + character preceded by a -, or a name preceded by --. + + -? ........ --help + Display help (from command line). + -a ........ --search-skip-screen + Search skips current screen. + -A ........ --SEARCH-SKIP-SCREEN + Search starts just after target line. + -b [_N] .... --buffers=[_N] + Number of buffers. + -B ........ --auto-buffers + Don't automatically allocate buffers for pipes. + -c ........ --clear-screen + Repaint by clearing rather than scrolling. + -d ........ --dumb + Dumb terminal. + -D xx_c_o_l_o_r . --color=xx_c_o_l_o_r + Set screen colors. + -e -E .... --quit-at-eof --QUIT-AT-EOF + Quit at end of file. + -f ........ --force + Force open non-regular files. + -F ........ --quit-if-one-screen + Quit if entire file fits on first screen. + -g ........ --hilite-search + Highlight only last match for searches. + -G ........ --HILITE-SEARCH + Don't highlight any matches for searches. + -h [_N] .... --max-back-scroll=[_N] + Backward scroll limit. + -i ........ --ignore-case + Ignore case in searches that do not contain uppercase. + -I ........ --IGNORE-CASE + Ignore case in all searches. + -j [_N] .... --jump-target=[_N] + Screen position of target lines. + -J ........ --status-column + Display a status column at left edge of screen. + -k [_f_i_l_e] . --lesskey-file=[_f_i_l_e] + Use a lesskey file. + -K ........ --quit-on-intr + Exit less in response to ctrl-C. + -L ........ --no-lessopen + Ignore the LESSOPEN environment variable. + -m -M .... --long-prompt --LONG-PROMPT + Set prompt style. + -n -N .... --line-numbers --LINE-NUMBERS + Don't use line numbers. + -o [_f_i_l_e] . --log-file=[_f_i_l_e] + Copy to log file (standard input only). + -O [_f_i_l_e] . --LOG-FILE=[_f_i_l_e] + Copy to log file (unconditionally overwrite). + -p [_p_a_t_t_e_r_n] --pattern=[_p_a_t_t_e_r_n] + Start at pattern (from command line). + -P [_p_r_o_m_p_t] --prompt=[_p_r_o_m_p_t] + Define new prompt. + -q -Q .... --quiet --QUIET --silent --SILENT + Quiet the terminal bell. + -r -R .... --raw-control-chars --RAW-CONTROL-CHARS + Output "raw" control characters. + -s ........ --squeeze-blank-lines + Squeeze multiple blank lines. + -S ........ --chop-long-lines + Chop (truncate) long lines rather than wrapping. + -t [_t_a_g] .. --tag=[_t_a_g] + Find a tag. + -T [_t_a_g_s_f_i_l_e] --tag-file=[_t_a_g_s_f_i_l_e] + Use an alternate tags file. + -u -U .... --underline-special --UNDERLINE-SPECIAL + Change handling of backspaces. + -V ........ --version + Display the version number of "less". + -w ........ --hilite-unread + Highlight first new line after forward-screen. + -W ........ --HILITE-UNREAD + Highlight first new line after any forward movement. + -x [_N[,...]] --tabs=[_N[,...]] + Set tab stops. + -X ........ --no-init + Don't use termcap init/deinit strings. + -y [_N] .... --max-forw-scroll=[_N] + Forward scroll limit. + -z [_N] .... --window=[_N] + Set size of window. + -" [_c[_c]] . --quotes=[_c[_c]] + Set shell quote characters. + -~ ........ --tilde + Don't display tildes after end of file. + -# [_N] .... --shift=[_N] + Set horizontal scroll amount (0 = one half screen width). + --file-size + Automatically determine the size of the input file. + --follow-name + The F command changes files if the input file is renamed. + --incsearch + Search file as each pattern character is typed in. + --line-num-width=N + Set the width of the -N line number field to N characters. + --mouse + Enable mouse input. + --no-keypad + Don't send termcap keypad init/deinit strings. + --no-histdups + Remove duplicates from command history. + --rscroll=C + Set the character used to mark truncated lines. + --save-marks + Retain marks across invocations of less. + --status-col-width=N + Set the width of the -J status column to N characters. + --use-backslash + Subsequent options use backslash as escape char. + --use-color + Enables colored text. + --wheel-lines=N + Each click of the mouse wheel moves N lines. + + + --------------------------------------------------------------------------- + + LLIINNEE EEDDIITTIINNGG + + These keys can be used to edit text being entered + on the "command line" at the bottom of the screen. + + RightArrow ..................... ESC-l ... Move cursor right one character. + LeftArrow ...................... ESC-h ... Move cursor left one character. + ctrl-RightArrow ESC-RightArrow ESC-w ... Move cursor right one word. + ctrl-LeftArrow ESC-LeftArrow ESC-b ... Move cursor left one word. + HOME ........................... ESC-0 ... Move cursor to start of line. + END ............................ ESC-$ ... Move cursor to end of line. + BACKSPACE ................................ Delete char to left of cursor. + DELETE ......................... ESC-x ... Delete char under cursor. + ctrl-BACKSPACE ESC-BACKSPACE ........... Delete word to left of cursor. + ctrl-DELETE .... ESC-DELETE .... ESC-X ... Delete word under cursor. + ctrl-U ......... ESC (MS-DOS only) ....... Delete entire line. + UpArrow ........................ ESC-k ... Retrieve previous command line. + DownArrow ...................... ESC-j ... Retrieve next command line. + TAB ...................................... Complete filename & cycle. + SHIFT-TAB ...................... ESC-TAB Complete filename & reverse cycle. + ctrl-L ................................... Complete filename, list all.