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

Mavilim h.o ve awesome oscillator indikatör kombinasyonları ile tarama yapmak

Soruldu
Kategori
Explorer
Görüntülenme
1.322 görüntülenme
Durum
Çözüldü
Merhabalar ben Mavilim indikatörü (FirstMovPeriod :1 - SecondMovPeriod :1 değerlerinde) Movig Average indikatörü ( period:5 değerinde) ve Awesome Oscillator indikatörü  (kısa period:1 uzun period 34 değerlerinde) ile tarama yapmak istiyorum yani mavilim yeşile dönecek hareketli ortalama mavilim çizgisini yukarı kesecek ve Awesome Oscillatör değeri 0 ve üzerine çıkacak bu üç koşulu sağlayacak tarama formülünü yazabilmeniz mümkünmüdür

Teşekkeürler
Paylaş

1 Cevap

0

Kabul edilen cevap

Merhabalar,

İstediğiniz tarama aşağıda verilmiştir.

Lütfen inceleyiniz.

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 cihatdestek : 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(1)]
			public int MavilimwFirstMovPeriod1;

		[Parameter(1)]
			public int MavilimwSecondMovPeriod1;

		[Parameter(5)]
			public int MovPeriod1;

		[Parameter(MovMethod.S)]
			public MovMethod MovMovMethod1;

		[Parameter(1)]
			public int AwesomeoscillatorShortPeriod1;

		[Parameter(34)]
			public int AwesomeoscillatorLongPeriod1;

		MAVILIMW mavilimw;
		MOV mov;
		AwesomeOscillator awesomeOscillator;



		public override void OnInit()
		{
			mavilimw = MAVILIMWIndicator(Symbol, SymbolPeriod, MavilimwFirstMovPeriod1, MavilimwSecondMovPeriod1);
			mov = MOVIndicator(Symbol, SymbolPeriod, OHLCType.Close, MovPeriod1, MovMovMethod1);
			awesomeOscillator = AwesomeOscillatorIndicator(Symbol, SymbolPeriod, OHLCType.Close, AwesomeoscillatorShortPeriod1, AwesomeoscillatorLongPeriod1);


			AddColumns(1);
			SetColumnText(0, "AwesomeOscillator");


		}


		/// <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;
			SetColumn(0, awesomeOscillator.Value[0][awesomeOscillator.CurrentIndex]);

			var barData = GetBarData();
			var RefTilson1 = Ref(mavilimw, -1);
			var RefTilson2 = Ref(mavilimw, -2);




			if (CrossAbove(mov, mavilimw, 0, 0)
					&& awesomeOscillator.Value[0][awesomeOscillator.CurrentIndex] > 0m
					&& mavilimw.CurrentValue>RefTilson1 && RefTilson1 <= RefTilson2)
			{
				return true;
			}
			return false;


		}
	}
}

İyi çalışmalar.

BağlantıBayrakladüzenlendi · MUHASEBECİHATasiyangMatriks Destek11.113

Cevabınız

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