0 beğenilme 0 beğenilmeme
1,436 kez görüntülendi

Merhaba,

Aşağıdaki indikatördeki tren çizgilerini grafiğe nasıl çizdirebilirim?

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.ComponentModel;

using Matriks.Data.Identifiers;

using Matriks.Data.Symbol;

using Matriks.Engines;

using Matriks.Indicators;

using Matriks.Symbols;

using Matriks.AlgoTrader;

using Matriks.Trader.Core;

using Matriks.Trader.Core.Fields;

using System.Windows.Media;

using Matriks.Trader.Core.TraderModels;

using Matriks.Lean.Algotrader.AlgoBase;

using Matriks.Lean.Algotrader.Models;

using Matriks.Lean.Algotrader.Trading;

namespace Matriks.Lean.Algotrader

{

//Ilk parametre indikatörün adı, sınıfın adıyla aynı olmalıdır.

//Ikinci parametre indikatörün Dataserisinin üzerine mi yeni pencereye mi ekleneceğini belirtir. Yeni pencere için ->IndicatorDrawingArea.NewWindow , Data Serisi için IndicatorDrawingArea.OnDataSeries

[IndicatorInformationAttribute("tri", IndicatorDrawingArea.NewWindow)]

//Indikatörün çizgilerinin isimleri

[IndicatorLineInformationAttribute(new []

{

"tri(0)"

})]

 

public class tri : MatriksIndicator

{

 

//Indicator opsiyon panelinde değerleri değiştirebildiğimiz parametreler. Int, Bool, Decimal ve Enum değerleri alabilir.Tüm değişken tiplerini DefaultValue ile tanımlarız. 

[DefaultValue(5)]

public int Period

{

get; set;

}

 

ITrend DusTrend;

ITrend YukTrend;

 

public sealed override void OnInit()

{

AddSymbol(Symbol, SymbolPeriod);

 

DusTrend = MyTrend(Symbol, SymbolPeriod, 100, 0, TrendType.Decreasing, true);

YukTrend = MyTrend(Symbol, SymbolPeriod, 100, 0, TrendType.Increasing, true);

 

//MyTrend fonksiyonu arac kutusundan default degerler ile getirilmistir.

//Boylelikle hem hata alinmadan kod compile etmekte, hem de ornek degerler gosterilmektedir.

//***Grafikte gorebileceginiz bir trend olusturmak icin lutfen bu degerleri degistirin***

//(Kullanmak istediginiz MyTrend'e gore intellisense'de secenekleri gorebilirsiniz)

//Symbol, SymbolPeriod sizin tarafinizdan tanimlanmis sembol ve periyotudur.

//Parametre olarak tanimlanmadiysa ornek tanimlamalar: Symbol: "GARAN"

//barCount(default=100) trend cizgisinin kac bari kapsayacagidir.

//refIndex(default=0) son bardan kac bar once trend cizgisinin kapatilacagidir

//(orn. 0 son bara kadar cekilir, 10 ise canli bardan 10 bar once trend cizgisi sonlandirilir.)

//TrendType.Increasing veya TrendType.Decreasing yükselen/düşen trendler.

//isAutoTrend(false) trend'i otomatik olarak cizip birakir. True yapilirsa, bari her yeni data ile gunceller.

DrawTrend(DusTrend, Colors.Red);

DrawTrend(YukTrend, Colors.Red);

}

 

/// <summary>

/// Seçilen sembolün bardata'ları güncellendikçe bu fonksiyon tetiklenir. 

/// </summary>

/// <param name="currentBar">Güncellenen bardata'nın indexteki sırası</param>

/// <param name="inputValue">Seçilen OHLC tipine göre gelen bardata'nın o anki değeri</param>

/// <param name="barDateTime">Bardata'ya gelen güncelleme zamanı</param>

public override void OnDataUpdate(int currentBar, decimal inputValue, DateTime barDateTime)

{

 

 

}

}

}

/// Seçilen sembolün bardata'ları güncellendikçe bu fonksiyon tetiklenir. ///

///

Güncellenen bardata'nın indexteki sırası ///Seçilen OHLC tipine göre gelen bardata'nın o anki değeri ///Bardata'ya gelen güncelleme zamanı public override void OnDataUpdate(int currentBar, decimal inputValue, DateTime barDateTime) { } } }
Indikator Builder kategorisinde (18 puan) tarafından | 1,436 kez görüntülendi

Bu soruya cevap vermek için lütfen giriş yapınız veya kayıt olunuz.

Hoş geldiniz, Matriks Destek Platformu sizlere sorularınızın hızlıca cevaplanması için bir ortam sağlar. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.



7,586 soru
7,592 cevap
4,435 yorum
10,412 kullanıcı