← Zurück

NewPositions v4.0.23

Здраствуйте, помогите пожалуйста решить проблемку.

У меня есть стратегия, полностью код писать не буду. И открытие позиции происходит примерно так

if (MainWindow._position_rim2 != null)
                                {
          if (MainWindow._position_rim2.CurrentValue == 0)
                                          {
                                                  MessageBox.Show("открываем позицию");
                                          }
                                }

те, сначало проверяем появилась ли информация о позиции rim2, если нет, то следовательно ничего не откроем..

А получаю информацию о позиции вот так, но чтоб получить, надо открыть позицию

Trader.NewPositions += positions =>
                {
                    if (_position_rim2 == null) { _position_rim2 = positions.FirstOrDefault(p => p.Security == _rim2); }
                }

Как можно получить эту информацию без открытия позиции? Помогите пожалуйста!

War dieses Thema hilfreich?

Thema teilen

Kommentare (3)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Den
Den

tmt: Здраствуйте, помогите пожалуйста решить проблемку.

У меня есть стратегия, полностью код писать не буду. И открытие позиции происходит примерно так

if (MainWindow._position_rim2 != null) { if (MainWindow._position_rim2.CurrentValue == 0) { MessageBox.Show("открываем позицию"); } }

> те, сначало проверяем появилась ли информация о позиции rim2, если нет, то следовательно ничего не откроем..
> 
> А получаю информацию о позиции вот так, но чтоб получить, надо открыть позицию
> ```csharp
Trader.NewPositions += positions =>
                {
                    if (_position_rim2 == null) { _position_rim2 = positions.FirstOrDefault(p => p.Security == _rim2); }
                }

Как можно получить эту информацию без открытия позиции? Помогите пожалуйста!

А что мешает проверить так:

if (MainWindow._position_rim2 == null || MainWindow._position_rim2.CurrentValue == 0) { MessageBox.Show("открываем позицию"); }

tmt
tmt Autor

Den: А что мешает проверить так:

if (MainWindow._position_rim2 == null || MainWindow._position_rim2.CurrentValue == 0) { MessageBox.Show("открываем позицию"); }

А может быть у меня позиция висит уже? и мне не нужно открывать еще 1, и как мне это проверить без открытия позиции?

tmt
tmt Autor
if (_position_rim2 == null) { _position_rim2 = Trader.Positions.FirstOrDefault(p => p.Security == _rim2); }

Думаю вот решение, всем спасибо.