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

Kıvanç Özbilgeç "Algoritma Dünyası" programında paylaştığı "mum formasyonları" kodlarını IQ alho ile explorer tanımlamak istiyorum bunu nasıl yapabilirim? "Delen mumlar boğa formülü" başlığı altında paylaştığı kod şu şekilde:

"ref(c,-1)<=ref(o,-1)*0.995 and o<c and o<ref(L,-1) and c>(ref(o,-1)+ref(c,-1))/2 and c<ref(o,-1)"
Algoritmik Trading kategorisinde (18 puan) tarafından | 722 kez görüntülendi

1 cevap

1 beğenilme 0 beğenilmeme

Merhabalar,

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Matriks.Data.Symbol;
using Matriks.Engines;
using Matriks.Lean.Algotrader.AlgoBase;
using Matriks.Lean.Algotrader.Models;
using Matriks.Indicators;

namespace Matriks.Lean.Algotrader
{
	public class mumformasyon : Explorer
	{

		public override void OnInit()
		{

		}

		public override bool OnExplorer(List<BarDataEventArgs> bardatas)
		{
			var barData1 = GetBarData();
			var ohlcData1 = GetSelectedValueFromBarData(barData1, OHLCType.Close);

			var Close = Ref(barData1, OHLCType.Close, 0);
			var Low = Ref(barData1, OHLCType.Low, 0);
			var Open = Ref(barData1, OHLCType.Open, 0);

			var Close_ = Ref(barData1, OHLCType.Close, 1);
			var Low_ = Ref(barData1, OHLCType.Low, 1);
			var Open_ = Ref(barData1, OHLCType.Open, 1);



			if (Close_ <= Open_ * 0.995m && Open<Close && Open<Low_ && Close>((Open_ + Close_) / 2) && Close<Open_)
				return true;
			return false;
		}
	}
}

İyi çalışmalar.

(11,069 puan) tarafından
0 0
Bu kodu hazır şablonları kullanarak diğer mum formasyonları için ben kendi başıma nasıl yazabilirim?
0 0

Merhabalar,

Hazır Şablon kullanarak yazmanız maalesef mümkün değildir. 

Explorer Sihirbazı bu tarz bir yapıyı desteklemez. 

Fakat size elimden geldiğince Kapanış, Açılış, Yüksek ve Düşük gibi değerleri nasıl çekebileceğinizi izah edebilirim.

Bunun için aşağıdaki yapıyı kullanabilirsiniz. 

Aşağıdaki şablon açılış, kapanış ve düşük gibi değerler verir. 

            var barData1 = GetBarData();

			var Close = Ref(barData1, OHLCType.Close, 0);
			var Low = Ref(barData1, OHLCType.Low, 0);
			var Open = Ref(barData1, OHLCType.Open, 0);

Eğer parantez içerisinde 0 yerine 1 yazarsanız, 1 bar önceki açılış kapanış ve düşük gibi değerleri verir. 

			var Close_ = Ref(barData1, OHLCType.Close, 1);
			var Low_ = Ref(barData1, OHLCType.Low, 1);
			var Open_ = Ref(barData1, OHLCType.Open, 1);

Herhangi bir yerde bunu kullanmak isterseniz direkt kopyala yapıştır yapabilir, formülünüzde kullanabilirsiniz.

İyi çalışmalar.

7,586 soru
7,592 cevap
4,435 yorum
10,412 kullanıcı