Files
QuanTAlib/quantower/Averages/QemaIndicator.cs
T
Miha Kralj 58d72c06ca Squash
dotcover

s1

.sln

s1

s1

s2

s3

s4

s5

s1

s2

x

x2

x3

x4

x5

x6

x1

sonarcube cleanup1

sonarcube cleanup2

sonarcube cleanup 3

fixes

q

q

q

q

q

q

q

q

q1

q2

q

q1

codacy 1
2024-09-23 22:08:40 -07:00

30 lines
1.1 KiB
C#

using TradingPlatform.BusinessLayer;
namespace QuanTAlib;
public class QemaIndicator : IndicatorBase
{
[InputParameter("alpha 1", sortIndex: 1, minimum: 0.01, maximum: 1.0, increment: 0.01, decimalPlaces: 2)]
public double k1 { get; set; } = 0.2;
[InputParameter("alpha 2", sortIndex: 2, minimum: 0.01, maximum: 1.0, increment: 0.01, decimalPlaces: 2)]
public double k2 { get; set; } = 0.3;
[InputParameter("alpha 3", sortIndex: 3, minimum: 0.01, maximum: 1.0, increment: 0.01, decimalPlaces: 2)]
public double k3 { get; set; } = 0.4;
[InputParameter("alpha 4", sortIndex: 4, minimum: 0.01, maximum: 1.0, increment: 0.01, decimalPlaces: 2)]
public double k4 { get; set; } = 0.5;
private Qema? ma;
protected override AbstractBase QuanTAlib => ma!;
public override string ShortName => $"QEMA {k1:F2} : {k2:F2} : {k3:F2} : {k4:F2} :{SourceName}";
public QemaIndicator()
{
Name = "QEMA - Quad Exponential Moving Average";
Description = "Quad Exponential Moving Average";
}
protected override void InitIndicator()
{
ma = new Qema(k1, k2, k3, k4);
}
}