我试图在“量化金融”上问这个问题,但似乎这是一个更好的地方,因为这个问题更多的是关于编程而不是交易
你如何声明Indicator
接口?建模“指标”的正确方法是什么?
我正在使用 c#,我想声明这样的Indicator
接口:
interface Indicator
{
double Value { get; }
event Action<Void> ValueUpdated;
}
甚至可能像这样:
interface Indicator
{
event Action<Double> ValueUpdated;
}
我认为“纯价格”也是微不足道的指标:
class PriceIndicator : Indicator {
PriceIndicator(string ticker) {
....
}
}
MA的例子:
class MovingAverage : Indicator {
private PriceIndicator price;
public MovingAverage(PriceIndicator price, int period) {
....
}
// when price.ValueUpdated event occurs need to recalculate MA and raise ValueUpdated event
}
你怎么看?欢迎任何建议!