Simple Slack bot that posts stock prices, manages play money portfolios and watch lists.
go get -t -d github.com/thorfour/stocktopus/...
docker pull quay.io/thorfour/stocktopus:v1.0.0
If you'd like to deploy your own version of stocktopus to DigitalOcean cloud there are terraform files provided in deploy/terraform
, simply run terraform apply
. You'll need to provide a do api key and provide your own hostname.
make
make docker
docker run -d -p 80:80 -p 443:443 -e REDISADDR=<redis endpoint> -e REDISPW=<redis password> quay.io/thorfour/stocktopus:v1.0.0
The slash command will respond to slash commands. Single tickers will be a quote and inline graph.
/stocktopus GOOGL
for a complete list of commands the bot supports.
/stocktopus help
In addition to what is covered in the help menu, stocktopus also supports team-wide watchlists. To utilize these you use the same format as you would for your personal watch list but simple add a name after a #
character immediately after the command.
For example:
/stocktopus watch #funlist GOOG
Would add GOOG to a watch list called funlist, and then anyone in your Slack team can access that same list Ex. /stocktopus list #funlist
You might also want to watch/buy or lookup securities listed on non-US exchanges. To do so simply add the exchange followed by a colon(:) before the ticker name.
Ex. /stocktopus tse:are
to list the ARE stock from the Toronto Stock Exchange
Note: other exchanges are no longer supported by the application. To enable this feature on a local build, you can build with alphavantage instead of IEX using make docker-alpha
Data provided for free by IEX
Stocktopus does not collect any personal identifying information. It does not store a history of your requests. The only data it does store is a unique ID received from Slack for a user if they opt to use the list or play money features. If you use the list or play money features it also stores the list of stocks a user has bought or added to their watch list.
If you have questions comments or concerns about the app please email [email protected]