如何调取指定时间段的最高价(最低价)?

1.雷达屏或图形分析

使用Highest(Lowest ) 函数可以获得指定Bar数内的最高价(最低价)。

此外,如果是一些规则的周期,如日、周、月、年,可以使用HighD, HighW, HighM, HighY(LowD, LowW, LowM, LowY)引用指定区间的最高价(最低价)。此外开盘价与收盘价与之类似。

2.交易App中

使用PriceSeriesProvider获取特定区间的最高价(HOLC亦同)。

如,若是想获得之前五日最高价,通过设定PriceSeriesProvider的Bar类型为5日K线,PriceSeriesProvider的结束日期设置为前交易日,那么PriceSeriesProvider.High[0]即为所求。

示例1:使用PriceSeriesProvider获得五日最高价

//引用命名空间
using tsdata.marketdata;
using elsystem;
//变量声明
vars:tsdata.marketdata.PriceSeriesProvider PSP(null);
//引用命名空间
method void AnalysisTechnique_Initialized( elsystem.Object sender, elsystem.InitializedEventArgs args ) 
Begin
    PSP = new PriceSeriesProvider;
    PSP.Load = False;   //修改属性之前关闭数据连接
    PSP.RealTime = True;    //设置为True以接收行情数据,设置为False为获取历史数据
    PSP.TimeZone = tsdata.common.TimeZone.Local;
    PSP.Symbol = "002413.SZ";   //设置代码.
    PSP.Interval.ChartType = tsdata.marketdata.DataChartType.Bars;  //设置图形为K线图.
    PSP.Interval.IntervalType = tsdata.marketdata.DataIntervalType.Daily;   //设置周期类型为日线.
    PSP.Interval.IntervalSpan = 5;  //设置周期为5日线.
    PSP.Range.Type = tsdata.marketdata.DataRangeType.Bars;  //按照Bars数目设置区间.
    PSP.Range.Bars = 1; //设置数据区间的Bars数目共计1.
    PSP.IncludeVolumeInfo = False;  //设置为True 则包含Volume信息.
    PSP.IncludeTicksInfo = False;   //设置为True 则包含Ticks信息.
    PSP.UseNaturalHours = False;    //设置为True 则尝试使用自然时间.
    PSP.StateChanged += PSP_StateChanged ;  // 为PSP绑定状态变化事件PSP_StateChanged.
    PSP.Load = True;    //打开数据连接,只是打开动作,不堵塞进程,异步载入数据
End;
//PSP状态变化事件
method void PSP_StateChanged(elsystem.Object sender,tsdata.common.StateChangedEventArgs args)
Begin
    print("PSP.State: "+PSP.State.ToString() );
    if(PSP.State = tsdata.common.DataState.Loaded) then     //如果加载状态为已加载(Loaded)
    Begin
        //Sample code:
        print("PSP loaded.",PSP.High[0]);
    End;
End;

//打印语句输出栏结果示例:HighLimit: 100900 LowLimit:100900
Copyright © 1998-2018 国信证券股份有限公司 版权所有发布时间: 2018-05-14 14:58:15

results matching ""

    No results matching ""