0 beğenilme 0 beğenilmeme
59 kez görüntülendi
Son bar hacmi önceki 500 barın ortalamasına göre 40 kat artmış ve bu barda rsi bir önceki değerine göre artış göstermiş(yani hacim satış yönlü değil alış yönlü gelmiş) ürünü bulmak ve al emri iletmek için Matriks IQ stratejisi oluşturmak istiyorum yardımcı olabilir misiniz?
Ek olarak aynı koşulları sadece tarama yapmam için Matriks kodunu da iletebilirseniz çok sevinirim
Algoritmik Trading kategorisinde (23 puan) tarafından | 59 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhaba, aşağıda ki örneği imceleyebilirsiniz.

Eğitim dokümanlarımızı inceleyebilirsiniz.

Olası sorularınız için iqdestek@matriksdata.com mail adresine mail atabilirsiniz.

Explorer Sihirbazı

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 ssd : 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;

		[Parameter(14)]
			public int RsiPeriod1;

		VOLUME volume;
		SMA sma;
		RSI rsi;



		public override void OnInit()
		{
			volume = VolumeIndicator(Symbol, SymbolPeriod);
			sma = SMAIndicator(volume, SmaPeriod1);
			rsi = RSIIndicator(Symbol, SymbolPeriod, OHLCType.Close, RsiPeriod1);


			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 bardata = bardatas.FirstOrDefault() ? .BarData;

			if (volume.Value[0][volume.CurrentIndex] > sma.Value[0][sma.CurrentIndex - 1] * 40 &&
				rsi.Value[0][rsi.CurrentIndex] > rsi.Value[0][rsi.CurrentIndex - 1])
			{
				return true;
			}
			return false;


		}
	}
}

 

önce (510 puan) tarafından
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,807 soru
7,785 cevap
4,493 yorum
12,537 kullanıcı