Giter Site home page Giter Site logo

akka-trading's Introduction

akka-trading

Scala Backtesting + Live Trading Framework built on top of Akka/Spray

What is it good for?

This framework can be useful for people coming from Scala background who are making their first steps in back/live testing automated trading strategies using Oanda's REST API, which is in my opinion one of the best available retail APIs. Since this is work in progress, if you are a Scala enthusiast and are interested in automated trading, have a look and feel free to fork repo and contribute!

Usage

Just clone the repo and drop your trading logic into StrategyFSM.scala. Don't forget to modify AuthInfo.scala to include your own account ID and access token for Oanda's REST API.

Note: If you are simply looking for a way to connect to Oanda REST API using Scala/Akka, check out my Scalanda project

akka-trading's People

Contributors

msilb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

akka-trading's Issues

java.util.NoSuchElementException: key not found: Flat

I tried to run this and got this error:

[ERROR] [03/20/2016 18:21:45.832] [oanda-client-akka.actor.default-dispatcher-3] [akka://oanda-client/user/orderManager] Next state Flat does not exist
[INFO] [03/20/2016 18:21:47.984] [oanda-client-akka.actor.default-dispatcher-2] [akka://oanda-client/user/eventListener] Received ChunkedResponseStart(HttpResponse(200 OK,Empty,List(Access-Control-Allow-Origin: *, Connection: close, Transfer-Encoding: chunked, Content-Type: application/json, Date: Sun, 20 Mar 2016 18:21:47 GMT, Server: openresty/1.7.0.1),HTTP/1.1))
[ERROR] [03/20/2016 18:21:48.088] [oanda-client-akka.actor.default-dispatcher-11] [akka://oanda-client/user/orderManager] key not found: Flat
java.util.NoSuchElementException: key not found: Flat
at scala.collection.MapLike$class.default(MapLike.scala:228)
at scala.collection.AbstractMap.default(Map.scala:59)
at scala.collection.mutable.HashMap.apply(HashMap.scala:65)
at akka.actor.FSM$class.processEvent(FSM.scala:652)
at org.akkatrading.live.StrategyFSM.processEvent(StrategyFSM.scala:20)
at akka.actor.FSM$class.akka$actor$FSM$$processMsg(FSM.scala:648)
at akka.actor.FSM$$anonfun$receive$1.applyOrElse(FSM.scala:642)
at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
at org.akkatrading.live.StrategyFSM.aroundReceive(StrategyFSM.scala:20)
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
at akka.actor.ActorCell.invoke(ActorCell.scala:495)
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
at akka.dispatch.Mailbox.run(Mailbox.scala:224)
at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.