0 beğenilme 0 beğenilmeme
432 kez görüntülendi
Explorer sihirbazında oluştruduğum explorerda son bar için değil genel olarak hareketli ortalamı kıran tüm enstrumanlar çıkıyor yada son bar için istediğimde ise henüz kapanmamış bar için bunu kesenleri oluşturabiliyoruz. Ama benim istediğim 100 günlük ortalama da son barda kapanış yapmış ve henüz yeni barı yeni açmış olanları bulmak istiyorum.yani açık olan bardan bir önceki barın kapanış yapanları bulmak istyiorum.

 

using System;

using System.Collections.Generic;

using System.Linq;

using Matriks.Data.Symbol;

using Matriks.Engines;

using Matriks.Indicators;

using Matriks.Symbols;

using Matriks.Trader.Core;

using Matriks.Trader.Core.Fields;

using Matriks.Lean.Algotrader.AlgoBase;

using Matriks.Lean.Algotrader.Models;

using Matriks.Lean.Algotrader.Trading;

using Matriks.AI;

using Matriks.AI.AiParameters;

using Matriks.AI.Data;

using Matriks.Trader.Core.TraderModels;

 

namespace Matriks.Lean.Algotrader

{

public class SMAEXPLORER : Explorer

{

// Strateji çalıştırılırken kullanacağımız parametreler. Eğer sembolle ilgili bir parametre ise,

// "SymbolParameter" ile, değilse "Parameter" ile tanımlama yaparız. Parantez içindeki değerler default değerleridir.

 

 

 

[Parameter(100)]

public int SmaPeriod1;

 

SMA sma;

 

 

 

public override void OnInit()

{

sma = SMAIndicator(Symbol, SymbolPeriod, OHLCType.Close, SmaPeriod1);

 

 

AddColumns(0);

 

 

}

 

 

/// <summary>

/// Eklenen sembollerin bardata'ları ve indikatorler güncellendikçe bu fonksiyon tetiklenir.

/// </summary>

/// <param name="barData">Bardata ve hesaplanan gerçekleşen işleme ait detaylar</param>

public override bool OnExplorer(List<BarDataEventArgs> bardatas)

{

var barData1 = GetBarData(Symbol, SymbolPeriod);

 

var bardata = bardatas.FirstOrDefault() ? .BarData;

 

if (CrossBelow(sma, barData1, OHLCType.Close, 0))

{

return true;

}

return false;

 

 

}

}

}
Algoritmik Trading kategorisinde (51 puan) tarafından | 432 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba, sizin için bir örnek hazırladım.

Lütfen deneme hesabında ufak miktarlarla test ediniz.

Doğru çalıştığına emin olmadan kullanmayınız.

 

Aşağıda ki eğitim dokümanlarını inceleyebilirsiniz.

EXPLORER SİHİRBAZI İLK ÖRNEK

 

Algoritma sihirbazı:

 

https://destek.matriksdata.com/?qa=4438/iq-algoritma-sihirbaz%C4%B1n%C4%B1-nas%C4%B1l-kullan%C4%B1r%C4%B1z

 

https://destek.matriksdata.com/?qa=4448/algoritma-sihirbaz%C4%B1-kullan%C4%B1m%C4%B1-%C3%B6rnekler-%C3%A7oklu-ko%C5%9Ful-olu%C5%9Fturma

 

Matematiksel olarak tarifi:

Fiyat, Emayı yukarı kırdıktan sonra açılan yeni barın ema'nın değerinden büyük olması:

ema(2 bar önceki değeri) >= fiyat (2 bar önceki değeri)

ema(1 bar önceki değeri) < fiyat(1 bar önceki değeri)

ema < fiyat

 

(520 puan) tarafından
8,635 soru
8,589 cevap
4,821 yorum
19,782 kullanıcı