Skip to content
This repository has been archived by the owner. It is now read-only.
Bitcoin investing using Dollar Cost Averaging
Branch: master
Clone or download
Diego Merge pull request #11 from balinterdi/fix-crypto-asset-pair-extraction
Fix extracting crypto-fiat from asset pair
Latest commit 09ea2b8 Jul 18, 2018

Bitcoin investing using Dollar Cost Averaging strategy

This node script let you set a daily amount to invest on crypto currency (Bitcoin in this case) via the kraken crypto exchange.

Dollar Cost Averaging

Dollar-cost averaging (DCA) is an investment technique of buying a fixed dollar amount of a particular investment on a regular schedule, regardless of the share price. The investor purchases more shares when prices are low and fewer shares when prices are high.

Dollar Cost Averaging has being initially used in the stock market to pursue an investment on an higher number of stocks with the same amount spend, just by investing it in a longer period of time due to the volatility of the stocks.

In the case of crypto-currency is well known that the volatility of those assets is way higher than the traditional shares purchased in the stock market. This makes the Dollar Cost Averaging strategy well suited for this type of investments.

How you should choose investment amount and range

This highly depends on your risk level, in my case what I've done is set up a total investment amount. Let's say I want to invest 1000$ and I want to spread my investment for 3 months. I also know I want to invest daily to take advantage of the volatility of the bitcoin against the dollar.

1000 / (3 * 30) = 1000 / 90 = ~11$ / day

I will then setup my .env file



In order to make it work you will need

  • A bitcoin wallet obviously. I've used a desktop/paper wallet Electrum
  • A way to exchange EUR with Bitcoins and other crypto-currencies. This repo uses Kraken Exchange
  • node.js 8
  • npm

Getting started

Once you have registered your bitcoin wallet, you have your kraken account with enough funds and you've installed node js, you can start

Clone the project locally

git clone && cd bitcoin-trading-dca

Install the dependencies

npm install


This should be run once a day, every day, after lunch or setup a cronjob that runs it for you every day

node index.js

Serverless template

There is a serverless template that you can use if you want to deploy this to an aws lambda


Dollar Cost Averaging is meant to be used as a long-term strategy. This does not mean that returns are guaranteed, it's an investment and it's on your own risk. The general idea of this is to be used as Buy, hold and don't watch too closely

You can’t perform that action at this time.