gitextract_l1jpdydj/ ├── .dockerignore ├── .editorconfig ├── .env-sample ├── .eslintignore ├── .eslintrc ├── .github/ │ └── stale.yml ├── .gitignore ├── .jsbeautifyrc ├── .snyk ├── .travis.yml ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── Dockerfile ├── ISSUE_TEMPLATE.md ├── LICENSE ├── Makefile ├── README.md ├── boot.js ├── commands/ │ ├── backfill/ │ │ ├── backfill.consume.function.js │ │ ├── backfill.function.js │ │ ├── backfill.process.function.js │ │ └── backfill.update-screen.function.js │ ├── backfill.js │ ├── balance.js │ ├── buy.js │ ├── list-selectors.js │ ├── list-strategies.js │ ├── new_backfill.js │ ├── sell.js │ ├── sim.js │ └── trade.js ├── conf-sample.js ├── docker-compose-traefik.yml ├── docker-compose-windows.yml ├── docker-compose.yml ├── docs/ │ ├── FAQ.md │ ├── README.md │ ├── developers.md │ ├── exchanges/ │ │ ├── bitstamp.md │ │ ├── gdax.md │ │ ├── kraken.md │ │ └── readme.md │ ├── installation/ │ │ ├── README.md │ │ ├── debian-ubuntu.md │ │ ├── docker.md │ │ ├── raspberrypi.md │ │ └── requirements.md │ ├── notifiers/ │ │ └── README.md │ ├── scripts/ │ │ ├── genetic_backtester.md │ │ └── readme.md │ └── strategies/ │ ├── howto_create_strategy.md │ ├── list-strategies.md │ ├── macd.md │ ├── noop.md │ ├── rsi.md │ ├── sar.md │ ├── speed.md │ ├── trend_ema.md │ └── tweaking.md ├── extensions/ │ ├── README.md │ ├── exchanges/ │ │ ├── _stub/ │ │ │ ├── _codemap.js │ │ │ ├── exchange.js │ │ │ └── products.json │ │ ├── binance/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── binanceus/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── bitfinex/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── bitstamp/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── bittrex/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── cexio/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── gdax/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ ├── test.js │ │ │ └── update-products.sh │ │ ├── gemini/ │ │ │ ├── .snyk │ │ │ ├── exchange.js │ │ │ ├── package.json │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── hitbtc/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── kraken/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── poloniex/ │ │ │ ├── exchange.js │ │ │ ├── products.json │ │ │ └── update-products.sh │ │ ├── sim/ │ │ │ └── exchange.js │ │ └── therock/ │ │ ├── exchange.js │ │ ├── products.json │ │ └── update-products.sh │ ├── notifiers/ │ │ ├── adamant.js │ │ ├── discord.js │ │ ├── ifttt.js │ │ ├── prowl.js │ │ ├── pushbullet.js │ │ ├── pushover.js │ │ ├── slack.js │ │ ├── telegram.js │ │ ├── textbelt.js │ │ └── xmpp.js │ ├── output/ │ │ ├── _codemap.js │ │ └── api.js │ └── strategies/ │ ├── bollinger/ │ │ └── strategy.js │ ├── cci_srsi/ │ │ └── strategy.js │ ├── crossover_vwap/ │ │ ├── example_sims/ │ │ │ ├── index.html │ │ │ ├── main.css │ │ │ ├── vwapmax0.html │ │ │ ├── vwapmax10.html │ │ │ ├── vwapmax100.html │ │ │ ├── vwapmax1000.html │ │ │ ├── vwapmax10000.html │ │ │ ├── vwapmax20000.html │ │ │ ├── vwapmax500.html │ │ │ └── vwapmax5000.html │ │ └── strategy.js │ ├── dema/ │ │ └── strategy.js │ ├── ehlers_ft/ │ │ └── strategy.js │ ├── ehlers_mama/ │ │ ├── README.md │ │ └── strategy.js │ ├── ehlers_trend/ │ │ ├── README.md │ │ └── strategy.js │ ├── ichimoku/ │ │ └── strategy.js │ ├── ichimoku_score/ │ │ ├── README.md │ │ └── strategy.js │ ├── kc/ │ │ └── strategy.js │ ├── macd/ │ │ └── strategy.js │ ├── momentum/ │ │ └── strategy.js │ ├── multi/ │ │ └── strategy.js │ ├── neural/ │ │ ├── README.md │ │ └── strategy.js │ ├── noop/ │ │ └── strategy.js │ ├── pivot/ │ │ └── strategy.js │ ├── renko/ │ │ └── strategy.js │ ├── rsi/ │ │ └── strategy.js │ ├── sar/ │ │ └── strategy.js │ ├── speed/ │ │ └── strategy.js │ ├── srsi_macd/ │ │ └── strategy.js │ ├── stddev/ │ │ └── strategy.js │ ├── ta_ema/ │ │ └── strategy.js │ ├── ta_macd/ │ │ └── strategy.js │ ├── ta_macd_ext/ │ │ └── strategy.js │ ├── ta_ppo/ │ │ └── strategy.js │ ├── ta_srsi_bollinger/ │ │ └── strategy.js │ ├── ta_stoch_bollinger/ │ │ └── strategy.js │ ├── ta_trix/ │ │ └── strategy.js │ ├── ta_ultosc/ │ │ └── strategy.js │ ├── ti_bollinger/ │ │ └── strategy.js │ ├── ti_hma/ │ │ └── strategy.js │ ├── ti_stoch/ │ │ └── strategy.js │ ├── ti_stoch_bollinger/ │ │ └── strategy.js │ ├── trend_bollinger/ │ │ └── strategy.js │ ├── trend_ema/ │ │ └── strategy.js │ ├── trendline/ │ │ ├── README.md │ │ └── strategy.js │ ├── trust_distrust/ │ │ └── strategy.js │ ├── vpt/ │ │ └── strategy.js │ └── wavetrend/ │ └── strategy.js ├── lib/ │ ├── _data-structures/ │ │ └── Queue.js │ ├── adx.js │ ├── backtester.js │ ├── bollinger.js │ ├── cci.js │ ├── cmf.js │ ├── debug.js │ ├── ema.js │ ├── engine.js │ ├── format.js │ ├── heikinAshi.js │ ├── helpers.js │ ├── highest.js │ ├── kc.js │ ├── lowest.js │ ├── lrc.js │ ├── momentum.js │ ├── normalize-selector.js │ ├── notify.js │ ├── objectify-selector.js │ ├── output.js │ ├── phenotype.js │ ├── rsi.js │ ├── sar.js │ ├── services/ │ │ ├── collection-service.js │ │ ├── consume-and-process-service.js │ │ ├── exchange-service.js │ │ ├── resume-marker-service.js │ │ └── trades-service.js │ ├── slow_stochastic.js │ ├── sma.js │ ├── srsi.js │ ├── stddev.js │ ├── ta_bollinger.js │ ├── ta_ema.js │ ├── ta_macd.js │ ├── ta_macd_ext.js │ ├── ta_ppo.js │ ├── ta_stoch.js │ ├── ta_stochrsi.js │ ├── ta_trix.js │ ├── ta_ultosc.js │ ├── ta_volume.js │ ├── ta_willr.js │ ├── tcf.js │ ├── ti_bollinger.js │ ├── ti_hma.js │ ├── ti_macd.js │ ├── ti_rsi.js │ ├── ti_stoch.js │ ├── ti_stochrsi.js │ ├── vma.js │ ├── vwap.js │ └── wto.js ├── models/ │ └── README.md ├── package.json ├── post_install.js ├── scripts/ │ ├── auto_backtester/ │ │ ├── .snyk │ │ ├── backtester.js │ │ ├── backtester_trust_distrust.js │ │ └── package.json │ ├── cron.sh │ ├── genetic_algo/ │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── conda_environment.yaml │ │ ├── conf.py │ │ ├── constants.py │ │ ├── docker-compose.yml │ │ ├── evaluation.py │ │ ├── evolution/ │ │ │ ├── __init__.py │ │ │ ├── core.py │ │ │ ├── individual_base.py │ │ │ ├── selection.py │ │ │ └── utils.py │ │ ├── fabfile.py │ │ ├── halloffame.py │ │ ├── main.py │ │ ├── objective_function.py │ │ ├── parsing.py │ │ ├── requirements.txt │ │ ├── tests/ │ │ │ ├── __init__.py │ │ │ ├── test_evaluation.py │ │ │ ├── test_evolution.py │ │ │ ├── test_integration.py │ │ │ └── test_objective.py │ │ ├── utils.py │ │ └── zendividual.py │ └── genetic_backtester/ │ ├── darwin.js │ └── package.json ├── stats/ │ ├── index.html │ └── readme.md ├── templates/ │ ├── dashboard.ejs │ └── dashboard_assets/ │ ├── css/ │ │ ├── animate.css │ │ ├── colors/ │ │ │ └── default.css │ │ ├── spinners.css │ │ └── style.css │ ├── js/ │ │ ├── custom.js │ │ └── jquery.slimscroll.js │ └── manifest.json ├── test/ │ ├── _mocks/ │ │ ├── collectionService.mock.factory.js │ │ ├── consumeAndProcessService.mock.factory.js │ │ ├── exchangeService.mock.factory.js │ │ ├── resumeMarkerService.mock.factory.js │ │ └── tradeService.mock.factory.js │ ├── _specs/ │ │ ├── commands/ │ │ │ └── backfill/ │ │ │ ├── backfill.consume.function.test.js │ │ │ ├── backfill.function.test.js │ │ │ └── backfill.process.function.test.js │ │ └── lib/ │ │ └── services/ │ │ ├── collections-service.test.js │ │ ├── consume-and-process-service.test.js │ │ ├── exchange-service.test.js │ │ ├── resume-marker-service.test.js │ │ └── trades-service.test.js │ └── lib/ │ ├── engine.test.js │ ├── format.test.js │ ├── rsi.test.js │ └── srsi.test.js ├── update.bat ├── update.sh ├── webpack-src/ │ └── js/ │ ├── app.js │ └── echarts.js ├── webpack.config.js ├── zenbot.bat ├── zenbot.js └── zenbot.sh