Simple Elixir wrapper for the Stockfighter API.
Documentation can be found here
First, add Stockastic to your mix.exs
dependencies:
def deps do
[{:stockastic, "~> 0.0.2"}]
end
Fetching dependencies and running on elixir console:
mix deps.get
iex -S mix
You will see something like this:
Erlang/OTP 18 [erts-7.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
Interactive Elixir (1.1.1) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> Stockastic.start
Instantiating an authenticated client:
iex(1)> client = Stockastic.Client.new(%{access_token: "API_TOKEN_HERE"})
%Stockastic.Client{auth: %{access_token: "API_TOKEN_HERE"},
endpoint: "https://api.stockfighter.io/ob/api/"}
List stocks for a venue:
iex(2)> Stockastic.Stocks.list("EMWEX", client)
%{"ok" => true,
"symbols" => [%{"name" => "IdeaMountain Ltd.", "symbol" => "IML"}]}
Listing orders for a stock, on a venue:
iex(3)> Stockastic.Orders.list_for_stock("EMWEX", "YS53802698", "IML", client)
%{"ok" => true, "orders" => []}
Fetching the orderbook for a stock, on a venue:
iex(4)> Stockastic.Stocks.orderbook("EMWEX", "IML", client)
%{"asks" => nil,
"bids" => [%{"isBuy" => true, "price" => 6019, "qty" => 176},
%{"isBuy" => true, "price" => 5765, "qty" => 1691},
%{"isBuy" => true, "price" => 5737, "qty" => 1691},
%{"isBuy" => true, "price" => 5709, "qty" => 1691}], "ok" => true,
"symbol" => "IML", "ts" => "2015-12-11T20:25:06.068350021Z",
"venue" => "EMWEX"}
Further documentation is available here.
Start by forking this repo
Then run this command to fetch dependencies and run tests:
MIX_ENV=test mix do deps.get, test
Pull requests are greatly appreciated