OpenD、HighD、LowD和CloseD系列函数
[p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=4]一、简介[/size][/size][/font][/color][/p][p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=3][color=#4169e1]1. 系列函数功能介绍[/color][/size][/size][/font][/color][/p][p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][/size][/font][/color][/p][p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px]OpenD、HighD、LowD和CloseD系列函数都是通过调用OHLCPeriodsAgo或者OHLCPeriodsAgoGen函数来返回指定时间段内的指定价格,例如HighD(0)返回当天的最高价,HighD(1)返回前一天的最高价,以此类推,但是最多只能返回当天之前的第50天的最高价,也就是说HighD(51)不允许使用,HighD(50)允许使用,最多向历史引用50个数据对该系列所有函数都适用;由于OHLCPeriodsAgo和OHLCPeriodsAgoGen两个函数都返回开高低收4个价格,所以它们的参数需要用到numericref传址类型来输出多个结果。[/size][/font][/color][/p][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][/size][/font][/color]
[p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][/size][/font][/color][/p][p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px]由于指定时间段内的开、高、低和收盘价格的计算原理是相同的,所以我这里只对最高价的相关内容进行阐述,开盘价、最低价和收盘价格可以根据最高价的内容进行类推,在此不再赘述;HighS、HighD、HighW、HighM、HighY函数都是返回指定时间段的收盘价,不同的是,它们返回的是不同的时间周期的收盘价,五个函数后面的大写字母分别是S、D、W、M和Y,五个字母分别代表Session(时段)、Day(日)、Week(周)、Month(月)、Year(年),由于HighD和HighW、HighM、HighY函数的原理相同,所以这里我着重阐述HighS和HighD的相关内容,HighW、HighM、HighY函数的相关内容可以根据HighD进行类推;OpenD、HighD、LowD和CloseD系列函数的功能的简单介绍可以看表1 OpenD、HighD、LowD和CloseD系列函数。[/size][/font][/color][/p][color=#444444][font=Tahoma, 宋体, Simsun][size=14px]
[/size][/font][/color]
[p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][/size][/font][/color][/p][p=30, 2, left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px]关于日期的定义,表1中出现两个名词,一个是交易所时段,另一个是物理时段。交易所时段的一天,指的是将前一天晚上的夜盘计算到当天的日盘上,HighS返回指定日(比如2017-08-03号)的最高价,那么实际返回的就是指定日前一天夜盘(2017-08-02号晚上)和指定日(2017-08-03号)白天的商品合约的最高价格,这是对于内盘期货而言是这样计算的;对于股票,由于没有夜盘,所以HighS只计算日盘的最高价格;对于外盘期货,HighS的计算也是按照交易所时段来计算的,这个具体看外盘交易所如何规定交易日的时间范围。物理时段的一天,很好理解,就是从指定日的00:00:00到23:59:59的时间范围内的最高价格;物理时段的一周、一月和一年都是基于物理时段的一天进行累加,所以HighW返回的是指定周的最高价,HighM返回的是指定月的最高价,HighY返回的是指定年的最高价。[/size][/font][/color][/p] [align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=3][color=#4169e1]2. 内容安排[/color][/size][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]本文分成五个大部分,由浅由深的阐述OpenD、HighD、LowD和CloseD系列函数的功能介绍、计算原理、灵活运用、代码解析及函数扩展与构造;如果您只是想基本了解该系列函数的基本用法,您只需要看第一部分;如果您想在使用中避免一些误区,那么您需要看前三个部分;如果您想理解该系列函数的代码逻辑以便于完全掌握它们,甚至通过学习该系列函数的构造原理,您需要构造相同逻辑的其它功能函数,那么您需要看完这篇文章。[/p][/size][/font][/color][/align]
[align=center][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][font=宋体] 表[/font]1 OpenD[font=宋体]、[/font]HighD[font=宋体]、[/font]LowD[font=宋体]和[/font]CloseD[font=宋体]系列函数[/font][/size][/font][/color][/align][table=98%]
[tr][td=1,1,140] [align=center]MC[font=宋体]函数名称[/font][/align]
[/td][td=1,1,429][align=left][align=center][font=宋体]函数功能[/font][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OHLCPeriodsAgo[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]通过传址参数,输出指定时间段内的开、高、低和收盘价格[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OpenS[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(交易所时段)的开盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OpenD[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(物理时段)的开盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OpenW[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定周(物理时段)的开盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OpenM[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定月(物理时段)的开盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OpenY[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定年(物理时段)的开盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]HighS[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(交易所时段)的最高价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]HighD[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(物理时段)的最高价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]HighW[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定周(物理时段)的最高价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]HighM[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定月(物理时段)的最高价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]HighY[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定年(物理时段)的最高价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]LowS[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(交易所时段)的最低价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]LowD[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(物理时段)的最低价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]LowW[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定周(物理时段)的最低价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]LowM[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定月(物理时段)的最低价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]LowY[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定年(物理时段)的最低价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]CloseS[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(交易所时段)的收盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]CloseD[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定日(物理时段)的收盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]CloseW[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定周(物理时段)的收盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]CloseM[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定月(物理时段)的收盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]CloseY[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgo[font=宋体]函数,返回指定年(物理时段)的收盘价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]OHLCPeriodsAgoGen[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]相比[/font]OHLCPeriodsAgo[font=宋体]函数,该函数只是多了一个参数(子图编号)[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]HighDGen[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgoGen[font=宋体]函数,返回子图指定日(物理时段)的最高价[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,140][align=left][align=center]LowDGen[/align][/align][/td][td=1,1,429][align=right][align=left][align=center][font=宋体]调用[/font]OHLCPeriodsAgoGen[font=宋体]函数,返回子图指定日(物理时段)的最低价[/font][/align][/align][/align][/td][/tr]
[/table] [align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=4]二、计算原理[/size][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]HighS和HighD的计算原理实际上是通过逐个比较图表上指定日内的bar的最高价,来确定指定日的最高价(例如,图表的周期为1分钟,那么通过逐个比较前一天的每一根bar的最高价,最后将前一天所有的bar的最高价中的最大值通过HighD(1)返回),所以图表的周期不能大于1日;若图表的周期是2日,那么通过HighD和HighS返回的其实是指定bar的最高价,例如HighD返回的是当根bar的最高价,HighD(1)返回的是前一根bar的最高价,以此类推,因为HighD是的通过条件语句date<>date[1]进行判断的(就是当根bar的日期和前一根bar的日期进行比较,来区分不同的日),有点不一样的是,HighS是通过条件语句sessionlastbar[1]进行判断的;若图表的周期是1周及以上,那么HighD和HighS返回的是-1(还有两种情况是返回-1的,那就是当引用的数据超过50,例如HighD(51)返回-1,或者当数据不够时,也会返回-1,因为默认值是-1),这个判断是通过条件语句condition1=PeriodsAgo > 50 or BarType >2 or BarType > 4 进行判断的(bartype关键字是判断图表的周期类型,详细的可以看一下这个关键字的解释),当这个条件语句condition1成立的时候,返回值为-1。[/p]
[/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]所以在使用函数HighS和HighD时,图表的周期设为日内(秒、分、时)、ticks、合约或者1日;在使用函数HighW时,图表的周期需要设为日内(秒、分、时)、ticks、合约、1日或者1周(这里不建议使用周期是3日,因为这样会使某根bar上的数据分别来自两周,而函数HighW的计算中会根据bar的收盘时间来区分不同的周,所以最终会导致HighD返回错误的最高价,类似的情况在使用其它函数的时候也会出现);在使用函数HighM时,图表的周期需要设为日内(秒、分、时)、ticks、合约、1日、1周或者1月;在使用函数HighY时,图表的周期需要设为日内(秒、分、时)、ticks、合约、1日、1周、1月、2月、3月、4月、6月或者1年。[/p][/size][/font][/color][/align] [align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=4]三、灵活运用[/size][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#4169e1][size=3]1. 关键字[/size][size=3]sessionlastbar[/size][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]前面已经阐述了交易所时段是根据关键字sessionlastbar来识别的,那么sessionlastbar是如何判断交易时段结束,这个可以在MC的报价管理器中交易时段设置中看到;现在举例上海期货交易所商品合约shfe.rb hot的交易时段(对应报价管理器交易时段),如表2 shfe.rb hot交易时段所示。[/p][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]Sessionlastbar识别的是“结束”,两个“结束”之间的时间范围是一个“交易所时段”,而这个和实际的交易所时段是有一定的差别的;实际的交易日时段会将周五夜盘的行情计算到下周一的白天行情中,而sessionlastbar会将星期五的夜盘行情单独计算为一个交易日时段,星期一白天的行情单独计算为一个交易日时段。由于HighS是利用sessionlastbar关键字对交易日时段进行区分的,所以HighS并不能完全取到每一个实际交易日时段的最高价。[/p][/size][/font][/color][/align]
[align=center][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][font=宋体]表[/font]2 shfe.rbhot[font=宋体]交易时段[/font][/size][/font][/color][/align][table=98%]
[tr][td=1,1,114] [align=left][align=center][font=宋体]开盘[/font][/align][/align]
[/td][td=1,1,114][align=left][align=left][align=center][font=宋体]时间[/font][/align][/align][/align][/td][td=1,1,114][align=left][align=left][align=center][font=宋体]收盘[/font][/align][/align][/align][/td][td=1,1,114][align=left][align=left][align=center][font=宋体]时间[/font][/align][/align][/align][/td][td=1,1,114][align=left][align=left][align=center][font=宋体]时段结束[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期一[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]09:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期一[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期一[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期一[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]15:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]结束[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期一[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]21:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期一[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]23:00[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期二[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]09:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期二[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期二[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期二[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]15:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]结束[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期二[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]21:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期二[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]23:00[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期三[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]09:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期三[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期三[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期三[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]15:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]结束[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期三[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]21:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期三[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]23:00[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期四[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]09:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期四[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期四[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期四[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]15:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]结束[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期四[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]21:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期四[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]23:00[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期五[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]09:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期五[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114]
[/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期五[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]13:30[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期五[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]15:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]结束[/font][/align][/align][/align][/td][/tr]
[tr][td=1,1,114][align=left][align=left][align=center][font=宋体]星期五[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]21:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]星期五[/font][/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center]23:00[/align][/align][/align][/td][td=1,1,114][align=right][align=left][align=center][font=宋体]结束[/font][/align][/align][/align][/td][/tr]
[/table][color=#4169e1][font=Tahoma, 宋体, Simsun][size=14px]
[/size][/font][/color][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=3][color=#4169e1]2. 子图运行机制[/color][/size][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]在图表上(为方便起见,这里将最大bar设置为0,不开启bar内)可以插入一个子图(多个子图是同样的道理),主图上的bar和子图的bar在图表上是以收盘时间进行先后排列的,如果主图上的bar(为方便叙述记为A)和子图上的bar(为方便叙述记为B)的收盘时间相同,那么这两个bar会在图表上同一条垂直线上排列;如果A的收盘时间小于B,那么A在B的左边排列,B在A的右边排列。如果在代码中不出现data2,那么实际上主图上有多少根bar,代码就计算多少次,也就是说代码执行地计算不考虑子图data2的存在;如果代码中出现data2,那么实际上代码的计算会考虑图表上所有的bar的数目,每一根bar收盘都会计算一次,在同一垂直线上bar(分别来自不同的子图和主图)只会计算一次。[/p][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]这个部分会很难理解,因为还涉及“重新计算“和”更新“的概念,需要大家多多测试代码(利用print输出数据进行观察),详细的解释参考图1和图2进行进一步学习[/p]
[/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=3][color=#4169e1]3. OHLCPeriodsAgoGen 和HighDGen函数[/color][/size][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]OHLCPeriodsAgoGen和OHLCPeriodsAgo的区别在于使用了子图的数据,而HighDGen函数是调用OHLCPeriodsAgoGen函数,返回子图指定日(物理时段)的最高价。尽管HighDGen函数是代码计算中逐个比较子图中每一根bar的最高价然后取最高价返回,但是这其中会涉及两种计算,一种是“重新计算”,另一种是“更新”,只有当代码的计算是基于主图的bar进行计算(也就是“更新”),此时的比较才是有意义的,这时候比较出来的最高价才会通过HighDGen函数返回。例如,主图是1小时周期,子图是1分钟周期,假设2017-08-02号有7根小时bar,那么只是在7次基于主图bar计算时取的子图的7个最高价进行比较,然后通过HighDGen函数返回7个中的最高值。这部分内容,有兴趣可以自己研究一下。[/p][/size][/font][/color][/align] [align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][size=4]四、代码简析[/size][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][p=30, 2, left]这部分以OHLCPeriodsAgo函数内部代码进行解析,该系列其它函数根据这个函数的解析就很好理解了。HighS、HighD、HighW、HighM和HighY函数都是调用OHLCPeriodsAgo函数返回相应时段的最高价,而OHLCPeriodsAgo函数内部是通过参数PeriodType对这5个函数进行区分计算(PeriodType为0时,表示Session;PeriodType为1时,表示Day;PeriodTypeo为2时,表示Week;PeriodType为3时,表示Month;PeriodType为4时,表示Year)另外一个重要的参数是PeriodsAgo,这个是向历史引用的参数,最多只能向历史引用50个数据。代码的解析以HighD为例。[/p][/size][/font][/color][/align]
[align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=blue][font="][size=10pt]inputs[/size][/font][/color][color=black][font="][size=10pt]:[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]numericsimple[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]),[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]numericsimple[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]),[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodOpen[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]numericref[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]),[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodHigh[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]numericref[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]),[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodLow[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]numericref[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]),[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodClose[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]numericref[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=black][font="][size=10pt]{[/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodOpen[/size][/font][/color][color=#CC0066][font=宋体][size=10pt]、[/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodHigh [/size][/font][/color][color=#CC0066][font=宋体][size=10pt]、[/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodLow[/size][/font][/color][color=#CC0066][font=宋体][size=10pt]和[/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodClose[/size][/font][/color][color=black][font=宋体][size=10pt]都是传址参数,它们分别用于输出开盘价、最高价、最低价和收盘价[/size][/font][/color][color=black][font="][size=10pt]}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=blue][font="][size=10pt]variables[/size][/font][/color][color=black][font="][size=10pt]:[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]),[/size][/font][/color][color=#646464][font="][size=10pt] sess_last_bar[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=blue][font="][size=10pt]false[/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=blue][font="][size=10pt]arrays[/size][/font][/color][color=black][font="][size=10pt]:[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]4[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]50[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt]{[/size][/font][/color][color=purple][font="][size=10pt]OHLCPeriodsAgo[/size][/font][/color][font=宋体]函数在[/font][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#CC0066][font=宋体][size=10pt]和[/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=black][font=宋体][size=10pt]这个参数确定的情况下会返回[/size][/font][/color][color=black][font="][size=10pt]4[/size][/font][/color][color=black][font=宋体][size=10pt]个价格(开盘价、最高价、最低价和收盘价)[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=black][font=宋体][size=10pt]而数组[/size][/font][/color][color=black][font="][size=10pt]arr0[/size][/font][/color][color=black][font=宋体][size=10pt]被用于存储这[/size][/font][/color][color=black][font="][size=10pt]4[/size][/font][/color][color=black][font=宋体][size=10pt]个价格,每个价格会有[/size][/font][/color][color=black][font="][size=10pt]50[/size][/font][/color][color=black][font=宋体][size=10pt]个历史数据被存储在这个数组中,方便调用,默认初始值为[/size][/font][/color][color=black][font="][size=10pt]-1[/size][/font][/color][color=black][font=宋体][size=10pt];因为多维数据不能动态调用数组大小,所以最多只能向历史引用[/size][/font][/color][color=black][font="][size=10pt]50[/size][/font][/color][color=black][font=宋体][size=10pt]个数据[/size][/font][/color][color=black][font="][size=10pt]}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt]sess_last_bar [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]sessionlastbar[/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]50[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]or[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]BarType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=purple][font="][size=10pt]IFF[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=black][font="][size=10pt]<>[/size][/font][/color][color=darkblue][font="][size=10pt]0[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]+[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]+[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]2[/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]or[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]BarType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]4[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=black][font="][size=10pt]{[/size][/font][/color][color=black][font=宋体][size=10pt]这部分是判断语句,当[/size][/font][/color][color=black][font="][size=10pt]condition1[/size][/font][/color][color=black][font=宋体][size=10pt]成立时,所有都返回[/size][/font][/color][color=black][font="][size=10pt]-1[/size][/font][/color][color=black][font=宋体][size=10pt];也就是说,它限制向历史引用的数据超过[/size][/font][/color][color=black][font="][size=10pt]50[/size][/font][/color][color=black][font=宋体][size=10pt],它只允许图表的周期类型是[/size][/font][/color][color=black][font="][size=10pt]ticks[/size][/font][/color][color=black][font=宋体][size=10pt]、合约、秒、分、时、日、周、月、季和年,它不允许图表的周期大于需要返回的交易时段(这里的逻辑并不很严谨)[/size][/font][/color][color=black][font="][size=10pt]}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]begin[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodOpen[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodHigh[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodLow[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodClose[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=purple][font="][size=10pt]OHLCPeriodsAgo[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]end[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=blue][font="][size=10pt]else[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]begin[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] sess_last_bar[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]else[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]<>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]else[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]2[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]DayOfWeek[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]<[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]DayOfWeek[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]else[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]3[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Month[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]<>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Month[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]else[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]4[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Year[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]<>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Year[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt]{[/size][/font][/color][color=#646464][font=宋体][size=10pt]通过[/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodType[/size][/font][/color][color=#646464][font=宋体][size=10pt]来判断[/size][/font][/color][color=#646464][font="][size=10pt]session[/size][/font][/color][color=#646464][font=宋体][size=10pt]、[/size][/font][/color][color=#646464][font="][size=10pt]Day[/size][/font][/color][color=#646464][font=宋体][size=10pt]、[/size][/font][/color][color=#646464][font="][size=10pt]Week[/size][/font][/color][color=#646464][font=宋体][size=10pt]、[/size][/font][/color][color=#646464][font="][size=10pt]Month[/size][/font][/color][color=#646464][font=宋体][size=10pt]和[/size][/font][/color][color=#646464][font="][size=10pt]Year}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]CurrentBar[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]or[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=black][font="][size=10pt]{[/size][/font][/color][color=black][font=宋体][size=10pt]当[/size][/font][/color][color=black][font="][size=10pt]currentbar=1[/size][/font][/color][color=black][font=宋体][size=10pt]成立时或者当根[/size][/font][/color][color=black][font="][size=10pt]bar[/size][/font][/color][color=black][font=宋体][size=10pt]的日期和前一根[/size][/font][/color][color=black][font="][size=10pt]bar[/size][/font][/color][color=black][font=宋体][size=10pt]的日期不一致时,那么首先将当根[/size][/font][/color][color=black][font="][size=10pt]bar[/size][/font][/color][color=black][font=宋体][size=10pt]的最高价赋值给[/size][/font][/color][color=black][font="][size=10pt]arr0[2,var0][/size][/font][/color][color=black][font=宋体][size=10pt],因为是新的交易日的开始,所以必须存储到数组的新的存储单元中,那么这个是通过[/size][/font][/color][color=black][font="][size=10pt]var0[/size][/font][/color][color=black][font=宋体][size=10pt]循环减一达到目的的[/size][/font][/color][color=black][font="][size=10pt]}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]begin[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]-[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]50[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]O[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]2[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]H[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]3[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]L[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]4[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]C[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]end[/size][/font][/color][color=#646464][font="][size=10pt][/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]else[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]begin[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]H[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]>[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]2[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]2[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]H[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]L[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]<[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]3[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]condition1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]3[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]L[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]4[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]C[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]end[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt]{[/size][/font][/color][color=#646464][font=宋体][size=10pt]当[/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=#646464][font="][size=10pt]=[/size][/font][/color][color=blue][font="][size=10pt]Date[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=black][font=宋体][size=10pt]时,执行[/size][/font][/color][color=black][font="][size=10pt]else[/size][/font][/color][color=black][font=宋体][size=10pt]语句,也就是逐个将当前[/size][/font][/color][color=black][font="][size=10pt]bar[/size][/font][/color][color=black][font=宋体][size=10pt]的最高价与[/size][/font][/color][color=black][font="][size=10pt]arr0[2,var0][/size][/font][/color][color=black][font=宋体][size=10pt]进行比较,然后将最大的值重新存储在[/size][/font][/color][color=black][font="][size=10pt]arr0[2,var0][/size][/font][/color][color=black][font=宋体][size=10pt]中,不断更新[/size][/font][/color][color=black][font="][size=10pt]}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodOpen[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Mod[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]+[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]51[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodHigh[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]2[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Mod[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]+[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]51[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodLow[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]3[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Mod[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]+[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]51[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]oPeriodClose[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#0080C0][font="][size=10pt]arr0[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]4[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]Mod[/size][/font][/color][color=black][font="][size=10pt]([/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]var0[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]+[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#CC0066][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=black][font="][size=10pt],[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]51[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt])[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt]{[/size][/font][/color][color=#646464][font=宋体][size=10pt]执行完[/size][/font][/color][color=#646464][font="][size=10pt]if-else[/size][/font][/color][color=#646464][font=宋体][size=10pt]语句之后,再更新[/size][/font][/color][color=#646464][font="][size=10pt]oPeriodHigh[/size][/font][/color][color=#646464][font=宋体][size=10pt];这里使用到数学中的求余的技巧,举例一下就比较清楚了;当[/size][/font][/color][color=#646464][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=#646464][font=宋体][size=10pt]为[/size][/font][/color][color=#646464][font="][size=10pt]0[/size][/font][/color][color=#646464][font=宋体][size=10pt]时,那么[/size][/font][/color][color=#646464][font="][size=10pt]oPeriodHigh[/size][/font][/color][color=#646464][font=宋体][size=10pt]的值是不断更新变化的,当然[/size][/font][/color][color=#646464][font="][size=10pt]HighD(PeriodsAgo)[/size][/font][/color][color=#646464][font=宋体][size=10pt]也是不断更新变化的;当[/size][/font][/color][color=#646464][font="][size=10pt]PeriodsAgo[/size][/font][/color][color=#646464][font=宋体][size=10pt]为[/size][/font][/color][color=#646464][font="][size=10pt]1[/size][/font][/color][color=#646464][font=宋体][size=10pt]时,那么[/size][/font][/color][color=#646464][font="][size=10pt]oPeriodHigh[/size][/font][/color][color=#646464][font=宋体][size=10pt]的值取的是[/size][/font][/color][color=#646464][font="][size=10pt]arr0[2,var0+1][/size][/font][/color][color=#646464][font=宋体][size=10pt]的值,这个值不会每根[/size][/font][/color][color=#646464][font="][size=10pt]bar[/size][/font][/color][color=#646464][font=宋体][size=10pt]都变化了,它是前一日的最高价[/size][/font][/color][color=#646464][font="][size=10pt]}[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=purple][font="][size=10pt]OHLCPeriodsAgo[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]end[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=blue][font="][size=10pt]if[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]false[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=blue][font="][size=10pt]then[/size][/font][/color][/size][/font][/color][/align][align=left][color=#444444][font=Tahoma, 宋体, Simsun][size=14px][color=#646464][font="][size=10pt] [/size][/font][/color][color=#A447C7][font="][size=10pt]Value1[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt]=[/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=purple][font="][size=10pt]OHLCPeriodsAgo[/size][/font][/color][color=black][font="][size=10pt][[/size][/font][/color][color=darkblue][font="][size=10pt]1[/size][/font][/color][color=black][font="][size=10pt]][/size][/font][/color][color=#646464][font="][size=10pt] [/size][/font][/color][color=black][font="][size=10pt];[/size][/font][/color][/size][/font][/color][/align]
页:
[1]