技术分析是研究市场行为的一种方法,主要通过分析价格和成交量数据来预测未来的市场趋势。在技术分析中,最高点连线是一种常见的工具,通常用于辨别市场趋势、发现阻力位和确定交易策略。
在本文中,我们将介绍如何在同花顺、文华财经、MT4和MT5这四个平台中,使用代码自动绘制相邻的最高点连线。为了简化问题,我们将每20个K线作为一个区间来查找最高点。
1. 同花顺
在同花顺中,我们可以使用以下代码来绘制相邻的最高点连线:
H1:=HHV(HIGH,20); H2:=REF(H1,20); DRAWLINE(BARSLAST(H1=HHV(HIGH,20)),H1,BARSLAST(H2=HHV(HIGH,20)),H2,1),COLORRED;解释:
- HHV 函数用于查找指定区间内的最高价。
- REF 函数用于获取指定周期前的数据。
- DRAWLINE 函数用于绘制线段。
- BARSLAST 函数用于查找距离当前K线最近一次满足条件的K线数量。
2. 文华财经
在文华财经中,我们可以使用以下代码来绘制相邻的最高点连线:
V1:=HHV(HIGH,20); V2:=REF(V1,20); DRAWLINE(LINENUM-20,V1,LINENUM-40,V2,1),COLORRED;解释:
- HHV 函数用于查找指定区间内的最高价。
- REF 函数用于获取指定周期前的数据。
- DRAWLINE 函数用于绘制线段。
- LINENUM 函数用于获取当前K线的编号。
3. MT4
在MT4中,我们可以使用以下脚本代码来绘制相邻的最高点连线:
int start() { double highPrice1, highPrice2; datetime highTime1, highTime2; int highestIndex1, highestIndex2; highestIndex1 = iHighest(NULL, 0, MODE_HIGH, 20, 1); highPrice1 = High[highestIndex1]; highTime1 = Time[highestIndex1]; highestIndex2 = iHighest(NULL, 0, MODE_HIGH, 20, highestIndex1+20); highPrice2 = High[highestIndex2]; highTime2 = Time[highestIndex2]; ObjectCreate("HighLine", OBJ_TREND, 0, highTime1, highPrice1, highTime2, highPrice2); ObjectSetInteger(0, "HighLine", OBJPROP_COLOR, Red); ObjectSetInteger(0, "HighLine", OBJPROP_WIDTH, 2); return(0); }解释:
- iHighest 函数用于查找指定区间内的最高价的位置。
- High 数组用于获取高价。
- Time 数组用于获取时间。
- ObjectCreate 函数用于创建图形对象。
- ObjectSetInteger 函数用于设置图形对象的属性。
4. MT5
下面是MT5中用于绘制相邻最高点连线的完整代码示例。
int OnInit() { double highPrice1, highPrice2; datetime highTime1, highTime2; int highestIndex1, highestIndex2; highestIndex1 = iHighest(NULL, 0, MODE_HIGH, 20, 1); highPrice1 = High[highestIndex1]; highTime1 = Time[highestIndex1]; highestIndex2 = iHighest(NULL, 0, MODE_HIGH, 20, highestIndex1 + 20); highPrice2 = High[highestIndex2]; highTime2 = Time[highestIndex2]; ObjectCreate(0, "HighLine", OBJ_TREND, 0, highTime1, highPrice1, highTime2, highPrice2); ObjectSetInteger(0, "HighLine", OBJPROP_COLOR, clrRed); ObjectSetInteger(0, "HighLine", OBJPROP_WIDTH, 2); return(INIT_SUCCEEDED); }代码解释:
- OnInit函数:MT5平台上的脚本和自定义指标的初始化函数。
- iHighest函数:用于查找指定区间内的最高价的位置。
- High数组:用于获取高价。
- Time数组:用于获取时间。
- ObjectCreate函数:用于创建图形对象。第一个参数是图表编号,第二个参数是对象名称,第三个参数是对象类型,第四个参数是子窗口编号,接下来的参数是时间和价格。
- ObjectSetInteger函数:用于设置图形对象的属性。第一个参数是图表编号,第二个参数是对象名称,第三个参数是属性类型,最后一个参数是属性值。
此代码将在每20个K线区间内查找最高点,并将相邻的最高点连接起来。请注意,该代码仅用于示例,可能需要根据实际情况进行修改。在实际交易中,请谨慎使用。
总结:我们可以使用代码自动绘制相邻的最高点连线,帮助我们更好地进行技术分析和交易决策。请注意,以上代码仅用于示例,可能需要根据具体的需求进行修改和优化。在实际交易中,请谨慎使用。








