Regla para una sola vela
Descripción general
SimpleCandleRulesStrategy es una estrategia que demuestra el uso de reglas para velas en StockSharp. Realiza seguimiento de los volúmenes de las velas y registra información cuando se cumplen determinadas condiciones.
Componentes principales
// Componentes principales
public class SimpleCandleRulesStrategy : Strategy
{
}
Método OnStarted
Se llama cuando se inicia la estrategia:
- Inicializa una suscripción a velas de 5 minutos
- Establece reglas para procesar velas
// Método OnStarted
protected override void OnStarted2(DateTime time)
{
var subscription = new Subscription(TimeSpan.FromMinutes(5).TimeFrame(), Security)
{
// velas listas para usar mucho más rápido que la compresión sobre la marcha
// desactive la compresión para acelerar el optimizador (!!! asegúrese de tener velas)
//MarketData =
//{
// BuildMode = MarketDataBuildModes.Build,
// BuildFrom = DataType.Ticks,
//}
};
Subscribe(subscription);
var i = 0;
var diff = "10%".ToUnit();
this.WhenCandlesStarted(subscription)
.Do((candle) =>
{
i++;
this
.WhenTotalVolumeMore(candle, diff)
.Do((candle1) =>
{
LogInfo($"Regla WhenCandlesStarted y WhenTotalVolumeMore vela={candle1}");
LogInfo($"Regla WhenCandlesStarted y WhenTotalVolumeMore i={i}");
})
.Once().Apply(this);
}).Apply(this);
base.OnStarted2(time);
}
Lógica
- La estrategia se suscribe a velas de 5 minutos
- Cuando cada vela empieza a formarse, se establece una regla
- La regla se activa cuando el volumen total de la vela supera el 10% (mediante un valor porcentual)
- Cuando la regla se activa, se agrega al log información sobre la vela y el contador
- Después de la primera activación, la regla deja de funcionar gracias al método
Once()
Características
- Demuestra el uso de las reglas
WhenCandlesStartedyWhenTotalVolumeMore - Usa el mecanismo de suscripción a velas
- Muestra un ejemplo de creación de un valor porcentual mediante
"10%".ToUnit() - Muestra un ejemplo de logging de información en una estrategia mediante el método
LogInfo - Contiene código comentado para configurar la construcción de velas a partir de ticks