Merhaba,
aşağıdaki örneği inceleyip kullanabilirsiniz.
tarama formülünün adı MovOHLCKontrolu olmasına dikkat ediniz.
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 MovOHLCKontrolu : Explorer
{
[Parameter(8)]
public int Period;
[Parameter(MovMethod.Exponential)]
public MovMethod movmethod;
[Parameter(true)]
public bool HareketliOrtUstuMU;
decimal Seviye;
MOV mov;
public override void OnInit()
{
AddColumns(3);
SetColumnText(0, "Mov");
SetColumnText(1, "Close");
SetColumnText(2, "Altımı üstümü");
mov = MOVIndicator(Symbol, SymbolPeriod, OHLCType.Close, Period, movmethod);
}
public override bool OnExplorer(List<BarDataEventArgs> bardatas)
{
SetColumn(0, Math.Round(mov.CurrentValue, 4));
Seviye=bardatas.FirstOrDefault().BarData.Close;
SetColumn(1, Math.Round(Seviye, 4));
if (HareketliOrtUstuMU)
{
SetColumn(2, "Üstü");
}else
{
SetColumn(2, "Altı");
}
if ((HareketliOrtUstuMU && mov.CurrentValue<Seviye) || (!HareketliOrtUstuMU && mov.CurrentValue>Seviye))
return true;
return false;
}
}
}