+1 888 340 6572 GET STARTED
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-1829

Performance calling code strategy!!

action_vote_minus_faded.png
4
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

Для Версии MultiCharts 9.1 и выше
когда [IntrabarOrderGeneration = True];
Ðа данный момент код Strategy вызывается (recalculate) по следующим событиям:

  1. По событию изменения последней сделки на бирже (или по цене Last).
  2. По изменению Market Position Change.
  3. По изменению Order Filled.
  4. (Reserved Word) - RecalcLastBarAfter и Recalculate.

    Это уже хорошо но этого не достаточно! API OEC позволяет выполнить следующие улучшения.

Сложную и точную стратегию не написать если код стратегии не будет повторно вызываться (recalculate) реагируя на рыночные события за счет мгновенного вызова:
Для "inside Bid" и "inside Ask"
- Правило на событие любого изменения best Bid и best Ask по инструменту.
Для DOM
- Правило на событие любого изменения best Bid и best Ask по инструменту.

Любое изменение это:
Правило на событие повышения лучшего Bid > или = одного пункта;
Правило на событие понижения лучшего Bid < или = одного пункта;
Правило на событие повышения лучшего Ask > или = одного пункта;
Правило на событие понижения лучшего Ask < или = одного пункта;

--------------- RecalcLastBarAfter(Timeout) -----------------
Now the maximum recalculation frequency is 100 milliseconds (0.1 sec).
А хотелось бы:

The maximum recalculation frequency is 1 milliseconds (0.001 sec).

Введите пожалуйста функции для определения реализованной прибыли:

GetPositionRealizedPL (Symbol, Account) из TradeManager
GetRTRealizedPL (account) Real-time

Steps to reproduce this issue

Использовать событийный подход основанный на событиях
Для "inside Bid" и "inside Ask"
- Правило на событие любого изменения best Bid и best Ask по инструменту для вызова (recalculate) кода стратегии.
Для DOM
- Правило на событие любого изменения best Bid и best Ask по инструменту для вызова (recalculate) кода стратегии.

PowerLanguage - Keywords - Execution Control‎

[Recalculate.Bid_Ask=true] - This Reserved Word

Function
GetPositionRealizedPL (Symbol, Account) из TradeManager
Return:

Returns a floating point value identifying the position’s RealizedPL TradeManager calls. If no position exists or if the symbol or account isinvalid the return value will be zero.

Function
GetRTRealizedPL ( Account ) из аккаунта брокера
Return:
Returns a floating point value identifying the dollar amount of Real-time RealizedPL for the given futures account. Returns zero for an equity or invalid account.

Comments (0)
There are no comments
History
Issue basics
  • Type of issue
    Feature request
  • Category
    Performance
  • 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 (0)
There is nothing attached to this issue
Commits (0)
There are no code checkins for this issue
Duplicate issues (0)
This issue does not have any duplicates