诚信为本
量力而为
当前位置:峰汇在线 股票知识 正文

在不同软件平台中绘制股票相邻最高点连线的代码

技术分析是研究市场行为的一种方法,主要通过分析价格和成交量数据来预测未来的市场趋势。在技术分析中,最高点连线是一种常见的工具,通常用于辨别市场趋势、发现阻力位和确定交易策略。

在本文中,我们将介绍如何在同花顺、文华财经、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线区间内查找最高点,并将相邻的最高点连接起来。请注意,该代码仅用于示例,可能需要根据实际情况进行修改。在实际交易中,请谨慎使用。

总结:我们可以使用代码自动绘制相邻的最高点连线,帮助我们更好地进行技术分析和交易决策。请注意,以上代码仅用于示例,可能需要根据具体的需求进行修改和优化。在实际交易中,请谨慎使用。

版权所有转载请注明标题及链接:峰汇在线 » 在不同软件平台中绘制股票相邻最高点连线的代码