0 beğenilme 0 beğenilmeme
325 kez görüntülendi

matriks veri terminalinde kullandığım aşağıdaki taramayı iq da nasıl yapabilirim?

 

OPT1:=40;

OPT2:=1;

OPT3:=0.001;

BarsSince(Cross(MOV(C,opt1,VAR),OTT(C,opt1,opt2)*(1+opt3)))<2

Explorer kategorisinde (141 puan) tarafından | 325 kez görüntülendi

1 cevap

0 beğenilme 0 beğenilmeme

Merhabalar,

Aşağıdaki tarama dosyasını lütfen test ediniz.

 

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 BarSınceExp1 : 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(40)]
			public int TottPeriod1;

		[Parameter(1)]
			public decimal TottOpt1;

		[Parameter(0.001)]
			public decimal TottTwinOttCoef1;

		[Parameter(MovMethod.VAR)]
			public MovMethod TottMovMethod1;

		TOTT tott;



		public override void OnInit()
		{
			tott = TOTTIndicator(Symbol, SymbolPeriod, OHLCType.Close, TottPeriod1, TottOpt1, TottTwinOttCoef1, TottMovMethod1);


			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 (tott.Value[0][tott.CurrentIndex - 3] < tott.Value[1][tott.CurrentIndex - 3] && tott.Value[0][tott.CurrentIndex - 2] > tott.Value[1][tott.CurrentIndex - 2] && tott.Value[0][tott.CurrentIndex - 1] > tott.Value[0][tott.CurrentIndex - 2])
			{
				return true;
			}
			return false;


		}
	}
}

 

İyi çalışmalar.

(11,069 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,586 soru
7,592 cevap
4,435 yorum
10,412 kullanıcı