mirror of
https://github.com/DevExpress/netcore-winforms-demos.git
synced 2025-12-22 17:39:24 +00:00
55 lines
2.0 KiB
C#
55 lines
2.0 KiB
C#
using DevExpress.XtraCharts;
|
|
|
|
namespace DevExpress.StockMarketTrader {
|
|
public abstract class MovingAverageItem : CheckedIndicatorItem {
|
|
protected override string Name { get { return IndicatorName + " Moving Average"; } }
|
|
|
|
protected abstract MovingAverage CreateMovingAverage();
|
|
protected override Indicator CreateIndicator() {
|
|
MovingAverage movingAverage = CreateMovingAverage();
|
|
movingAverage.ValueLevel = ValueLevel.Close;
|
|
return movingAverage;
|
|
}
|
|
}
|
|
|
|
public class SimpleMovingAverageItem : MovingAverageItem {
|
|
protected override string IndicatorName { get { return "Simple"; } }
|
|
|
|
protected override MovingAverage CreateMovingAverage() {
|
|
return new SimpleMovingAverage();
|
|
}
|
|
}
|
|
|
|
public class ExponentialMovingAverageItem : MovingAverageItem {
|
|
protected override string IndicatorName { get { return "Exponential"; } }
|
|
|
|
protected override MovingAverage CreateMovingAverage() {
|
|
return new ExponentialMovingAverage();
|
|
}
|
|
}
|
|
|
|
public class TripleExponentialMovingAverageItem : MovingAverageItem {
|
|
protected override string IndicatorName { get { return "Triple Exponential"; } }
|
|
|
|
protected override MovingAverage CreateMovingAverage() {
|
|
return new TripleExponentialMovingAverageTema();
|
|
}
|
|
}
|
|
|
|
public class TriangularMovingAverageItem : MovingAverageItem {
|
|
protected override string IndicatorName { get { return "Triangular"; } }
|
|
|
|
protected override MovingAverage CreateMovingAverage() {
|
|
return new TriangularMovingAverage();
|
|
}
|
|
}
|
|
|
|
public class WeightedMovingAverageItem : MovingAverageItem {
|
|
protected override string IndicatorName { get { return "Weighted"; } }
|
|
|
|
protected override MovingAverage CreateMovingAverage() {
|
|
return new WeightedMovingAverage();
|
|
}
|
|
}
|
|
}
|