最简单的一个OnData示例

定义

展示一个最简单的OnData示例以了解OnData的运行机制

描述

此示例只加载了平安银行股票进行回测,当每天10.00时打印出平安银行在此时的价格

示例

public override void Initialize()
{
    ///系统设置 必须设置 因为此方法会获取策略ID 且必须是第一句
    SetConfig(1, 5);
    Print("初始化配置");

    SetStartDate(BeginTime); // 设置回测开始日期
    SetEndDate(EndTime); // 设置回测结束日期

    //设置平安银行股票
    var stock = AddStock("000001.XSHE", Resolution.Minute);
    SymbolPool.Add(stock);
}

/// <summary>
/// 每天数据到达时调用
/// </summary>
/// <param name="slice"></param>
public override void OnData(Slice slice)
{
    //每天10.00分打印所有股票此刻价格
    if (Time.Hour == 10 && Time.Minute == 0)
    {
        foreach (var item in SymbolPool)
        {
            Console.WriteLine($"股票:{item.Value},价格:{Securities[item].Price}");
        }
    }
}