Skip to content
This repository has been archived by the owner on Oct 19, 2022. It is now read-only.

Feature: Allow external async calls into strategy #15

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

symis84
Copy link

@symis84 symis84 commented Dec 1, 2018

This Pull Request allows developers to use external async calls into "strategy".
This feature is useful every time you need to get external async informations (external signals) when "strategy" has been called.
After you get your async informations you can trigger "next(action)" from strategy

@coveralls
Copy link

Pull Request Test Coverage Report for Build 92

  • 2 of 3 (66.67%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.003%) to 98.0%

Changes Missing Coverage Covered Lines Changed/Added Lines %
lib/index.ts 2 3 66.67%
Totals Coverage Status
Change from base Build 91: -0.003%
Covered Lines: 448
Relevant Lines: 457

💛 - Coveralls

@fhqvst
Copy link
Member

fhqvst commented Dec 2, 2018

This is definitely something I'd like to have (although I would probably prefer using async/await rather than callbacks).

However, my experience is that there are quite a few hidden little details which makes it harder to implement than it might seem at first. One must consider where events should be buffered, whether or not all consumers can be asynchronous, if ORDER_PLACED and ORDER_FILLED are guaranteed to be run before the next data feed event is parsed when backtesting, and so on.

Furthermore, DevAlpha's heavy dependence on Highland also adds to the complexity. Have a look at the createStreamSorted function for example.

But as I said – I'd very much like to have support for this. I'm probably fine with any solution as long as we have thorough tests for the cases mentioned above.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants