MultiCharts Easter Sale has jumped in! Up to 50% off Explore offers
+1 888 340 6572
MultiCharts Project Management
previous_open_issue.png
Go to the previous open issue
previous_issue.png
Go to the previous issue (open or closed)
star_faded.png
Please log in to bookmark issues
feature_request_small.png
Open Feature request MC-1673

MC.NET Synchronous Indicators

action_vote_minus_faded.png
1
Votes
action_vote_plus_faded.png
next_issue.png
Go to the next issue (open or closed)
next_open_issue.png
Go to the next open issue
Description

Multichart.NET:
There comes times when I need many indicators that work together synchronously. At the moment each indicator is executed separately (in separate threads?). What I want to do, is have a number of indicators that work as filters, other indicators that give signals for trading. All of these (custom written) indicators then flow their data into a central "engine" indicator that decides whether filter is active and whether we can execute a signal. This must be done synchronously BAR-BY-BAR. Then, if we have a signal, a strategy can execute the signal. Communication is handled via static C# structures.
What is needed:
(a) I need an attribute for my indicator/strategy classes in C# that say they must all be executed together synchronously (bar-by-bar).
(b) I need a way to programmatically give a "priority" to my indicators, to say for example filters are at level "1", signals at level "2", engine at level "5" and execution strategy at level "9". Then the calling sequence of the different indicators on each bar must be in this priority level (things at same priority can be called in whatever sequence).
This bar-by-bar processing is how other trading platforms work and this is the only way that one can split up code into different code blocks. My approach: take any number of filter indicators, take any number of signal components, any number of stoploss/exit indicators and then just plug in the engine to aggregate the signals and make decisions.
I attach a screenshot of how another platform solves this very nice and after using it for a while have to admit I really like this flexiibility.

Steps to reproduce this issue

New feature request.

Comments (0)
There are no comments
History
Issue basics
  • Type of issue
    Feature request
  • Category
    Usability
  • Targeted for
    Not determined
  • Status
    Not Reviewed
User pain
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
Affected by this issue (2)
People involved
Times and dates
  • Posted at
  • Last updated
Issue details
  • Resolution
    Not determined
  • Severity
    Normal
Attachments (1)
Commits (0)
There are no code checkins for this issue
Duplicate issues (0)
This issue does not have any duplicates