Я не могу решить эту проблему на платформе Matriks IQC#

Место общения программистов C#
Anonymous
 Я не могу решить эту проблему на платформе Matriks IQ

Сообщение Anonymous »

Код: Выделить всё

using system;

using Matriks.Data.Symbol;

using Matriks.Engines;

using Matriks.Symbols;

using Matriks.Trader.Core;

using Matriks.Trader.Core.Fields;

using Matriks.Trader.Core.TraderModels;

using Matriks.Lean.Algotrader.AlgoBase;

using Matriks.Lean.Algotrader.Models;

using Matriks.Lean.Algotrader.Trading;

using Matriks.Data.Tick;

using Matriks.Enumeration;

namespace Matriks.Lean.Algotrader

{ public class OrderStatusEventArgs : EventArgs { public string OrderId { get; set; } public OrdStatus Status { get; set; }
public OrderStatusEventArgs(string orderId, OrdStatus status)
{
OrderId = orderId;
Status = status;
}
}

public class oco_v2 : MatriksAlgo

{

[SymbolParameter("ENDAE")]

public string Symbol;

[Parameter(SymbolPeriod.Min5)]

public SymbolPeriod SymbolPeriod;

[Parameter(3)]  // Satış miktarı

public decimal SellOrderQuantity;

[Parameter(16.5)]  // Hedef fiyat (Limit Satış)

public decimal TargetSellPrice;

[Parameter(16.35)]  // Stop tetikleme fiyatı

public decimal StopTriggerPrice;

[Parameter(16)]  // Stop limit satış fiyatı

public decimal StopLimitSellPrice;

private bool limitOrderPlaced = false;

private bool stopOrderPlaced = false;

private string limitOrderId;

private string stopOrderId;

private string OrderId;

public override void OnInit()

{

AddSymbol(Symbol, SymbolPeriod);

AddSymbolMarketData(Symbol);

Debug("Limit ve Stop Limit Satış Stratejisi Başladı.");

}

public override void OnDataUpdate(BarDataEventArgs barData)

{

decimal currentPrice = barData.BarData.Close;

Debug($"Mevcut Fiyat: {currentPrice}, Hedef Satış Fiyatı: {TargetSellPrice}, Stop Tetikleme Fiyatı: {StopTriggerPrice}, Stop Limit Satış Fiyatı: {StopLimitSellPrice}");

// Limit satış emri gönder (Fiyat hedefe ulaşınca)

if (currentPrice >= TargetSellPrice && !limitOrderPlaced)

{

limitOrderId = SendLimitOrder(Symbol, SellOrderQuantity, OrderSide.Sell, TargetSellPrice);

Debug($"Limit Satış Emri Gönderildi -> ID: {limitOrderId}, Fiyat: {TargetSellPrice}, Miktar: {SellOrderQuantity}");

limitOrderPlaced = true;

}

// Stop-limit tetiklenirse limit emri gönder

if (currentPrice 
} < /p>
`< /p>
Я встречаюсь /strong> ошибка компиляции в моем коде C# при переопределении метода OnderOrderUpdate 
в моем пользовательском классе алгоритма торговли, который расширяется Matriksalgo < /code>. < /P>
Я уже попытался сделать несколько исправлений, включая: < /p>

Убедитесь, что Требуемые пространства имен (

Код: Выделить всё

using Matriks.Trader.Core.Events;
и использование matriks.trader.core.orders; ) правильно импортируется. Код> существует в документации Matriks API. ExecutionErportEventargs или ordereVentargs , но ни один, похоже, не решает проблему. класс вручную, но это привело к конфликтам или неожиданному поведению. < /p>
< /li>
< /ul>
Несмотря на это попытки, ошибка сохраняется.

Подробнее здесь: https://stackoverflow.com/questions/794 ... q-platform

Вернуться в «C#»