Matriks Destek ve Yardım Platformu

Matriks Ürünleri ile ilgili tüm sorularınız için bizlere buradan ulaşabilirsiniz. Daha önce sorulan soruları ve verilen cevapları ilgili sekmelerden ve arama üzerinden inceleyebilirsiniz. Sağ taraftaki kategoriler üzerinden İlgilendiğiniz özelliklerle ilgili soruları filtreleyebilirsiniz. Soru ve cevapları sosyal medyada paylaşabilirsiniz. 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.

0

Matrix IQ'da 2 farklı periyot kullanarak işlem yapma

Soruldu
Görüntülenme
1.517 görüntülenme
Durum
Çözüldü
Merhaba,

MAtrixIQ'yu yeni kullanmaya başlıyorum. Belki basit bir sorum olacak ama çalışma mantığını anlamam için önem arz ediyor.

Sormak istediğim soru şu; örneğin fiyat 1 günlük Bollinger ortalama değerini kestiğinde kuralını tanımlamak için ne yapmalıyım ?
Çünkü bollinger bilgisini günlük veriden alacak, fiyatı ise anlık alacak(en düşük olarak 1 dk var sanırım). Özetle 2 farklı periyot olacak.

Bu nasıl çalıştırılabiliyor ?ÖRnekle de yardımcı olursanız çok sevinirim.
Teşekkürler.
Paylaş

1 Cevap

1

Kabul edilen cevap

Merhaba,

Eklediğiniz indikatörün SymbolPeriod değerini strateji periodundan farklı kullanmalısınız..

Aşağıdaki örneği inceleyebilirsiniz.

***STRATEJİLERİ TEST/DENEME ORTAMINDA SINAMADAN VE SİZİN İSTEDİĞİNİZ ŞEKİLDE ÇALIŞTIĞINA EMİN OLMADAN GERÇEK ORTAMDA HİÇBİR ZAMAN ÇALIŞTIRMAYINIZ ***

using System;
using System.Collections.Generic;
using System.Linq;
using Matriks.Data.Symbol;
using Matriks.Engines;
using System.Windows.Media;
using Matriks.Indicators;
using Matriks.Symbols;
using Matriks.AlgoTrader;
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;

namespace Matriks.Lean.Algotrader
{
	public class Test : MatriksAlgo
	{
		// 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.

		[SymbolParameter("GARAN")]
		public string Symbol;

		[Parameter(SymbolPeriod.Min)]
		public SymbolPeriod SymbolPeriod;

		BOLLINGER bollinger;

		public override void OnInit()
		{
			AddSymbol(Symbol, SymbolPeriod);

			bollinger = BollingerIndicator(Symbol, SymbolPeriod.Day, OHLCType.Close, 20, 2, MovMethod.Simple);
			
			//Eger backtestte emri bir al bir sat seklinde gonderilmesi isteniyor bu true set edilir. 
			//Alttaki satırı silerek veya false geçerek emirlerin sirayla gönderilmesini engelleyebilirsiniz. 
			SendOrderSequential(true);
			WorkWithPermanentSignal(false);
		}

		public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues)
		{
			var bardata=GetBarData();
			
			if(CrossAbove(bardata,bollinger.BollingerMid,OHLCType.Close)){
				Debug("Şartınız şağlandı");
			}
		}
	}
}

 

Unblocked Games offering a wide range of experiences: action, puzzle, platform, racing, clicker mechanics, strategy, sports, even horror.
https://unblocked1games.github.io
BağlantıBayrakladüzenlendi · cuneytharpKripexMatriks Destek16.499

Cevabınız

Cevap yazmak için giriş yapın.Giriş yapKayıt ol