[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 233

 

你好!

你能告诉我是否有一个运算符可以代替计算: =iHigh- iLow

以确定某个特定条形的高度(长度),以点为单位?

我真的需要它!)

 
Tancor:

你好!

你能告诉我是否有一个运算符可以代替计算: = iHigh - iLow

以确定某个特定条形的高度(长度),以点为单位?

我真的需要它!)

你好!

不!:-)

 
Lonely_man:
请告知,代码中的哪个函数或行负责调用专家顾问的属性(有一个输入参数的窗口)? 我注意到在一些EA中,当它在图表上工作时,这个窗口不能被调用,也就是说,要看EA中设置了哪些参数,你只能在最初启动时,然后你不能从图表中看到那里写的东西。
当专家顾问在货币对窗口中运行时,你会在右上角看到一个笑脸。只要点击它,就会弹出一个输入参数的窗口。
 
paladin80:
当专家顾问在货币对窗口工作时,你会在右上角看到一个笑脸。只要点击它,就会弹出一个带有参数的窗口。

诀窍是,它不是对所有的EA都有效。 我想知道为什么。 下面是属性窗口应该如何打开的截图(点击图表上的EA-advisors>属性>属性窗口弹出)。 事情是,所有正常的EA都会打开(当市场波动过大时,不是一开始,而是3-4次后),但有些EA在第20次时就打开属性窗口(即使按了笑脸也没有反应)。我认为每次改变参数(或只是看参数)来查看专家顾问的图表是非常困难的,所以我必须在代码中注册一些东西。

 

有很多事情要做。指标画出来了,然后又不画了。我把你建议的代码放在我的下面,尽管我想知道数值是多少。 我把指标拉到图表上。它上面有一条红线!!!!它当然是这样!!!。 Yay !!!!! 而且有一条绿线,甚至有两条,一条只是垂直的,令人惊讶,最重要的是有!!!! 我对你的代码进行了红线处理,又编译了一遍,没有任何变化。

我加了一条蓝线!!!。 我编译了--也有一条蓝线!!!!!! 我把时间框架从H1改为M30,所有的线都消失了!!!!!!。 是的,是的,刚刚消失了!!!。 我在M15上,在H4上,又在H1上,任何地方都没有线路!!!。 哇!!!

我把指标从图表上移开,又把它放回图表上--魔鬼还是没有出现!!!。 它是什么? 这是图表,这是其上的指标。 现在的指标是这样的。

由于已经开始的nioble运动,我正在走出初学者的问题。 非常感谢您的建议!

//+------------------------------------------------------------------+
//|                                          поиск вульфа Димона.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window

#property indicator_buffers 3
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_color3 DarkBlue

double ВерхняячертаBuffer1[];
double НижняячертаBuffer2[];
double СинняячертаBuffer3[];
 double вершина; 
 double основание_первого_снижения;
 double начало;
 double вершина_волны_3;
 
 int timeframe, start ;
 int бар_вершина ;
 int бар_основание_первого_снижения;
 int бар_начало;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()

  {SetIndexStyle(0,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(0,ВерхняячертаBuffer1);//Alert ("SetIndexBuffer ",GetLastError( ) );
   SetIndexEmptyValue(0,0.0);
   
   SetIndexStyle(1,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(1,НижняячертаBuffer2);//Alert ("SetIndexBuffer ",GetLastError( ) ); 
   SetIndexEmptyValue(1,0.0);
   
   SetIndexStyle(2,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(2,СинняячертаBuffer3);//Alert ("SetIndexBuffer ",GetLastError( ) ); 
   SetIndexEmptyValue(2,0.0);
//---- indicators




//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//----

  // for(int i=Bars; i>=0;i--)
  int i=Bars;
       бар_вершина=iHighest( NULL,  timeframe, MODE_HIGH, i, start ) ;
       вершина =High[ бар_вершина ];
       бар_основание_первого_снижения=iLowest( NULL,  timeframe, MODE_LOW, бар_вершина, start ) ;
       основание_первого_снижения=Low[ бар_основание_первого_снижения ];
       бар_начало=iLowest( NULL,  timeframe, MODE_LOW, бар_вершина*2, бар_вершина ) ;
       начало=Low[ бар_начало ];
       
      //   Alert ( " бар_вершина   ",бар_вершина  , " вершина  " , вершина ,
      //    " бар_основание_первого_снижения  " ,бар_основание_первого_снижения  , " основание_первого_снижения  " , основание_первого_снижения , 
      //    " бар_начало  " , бар_начало   , " начало  " , начало    );
  
    НижняячертаBuffer2[бар_начало]=начало;
    НижняячертаBuffer2[бар_основание_первого_снижения]=основание_первого_снижения;
    
     int бар_проверка=iLowest( NULL,  timeframe, MODE_LOW, 5, 150 ) ;
     double проверка=Low[ бар_проверка ];
    ВерхняячертаBuffer1[бар_проверка]=проверка;
    ВерхняячертаBuffer1[бар_основание_первого_снижения]=основание_первого_снижения;
   // Alert ( " бар_проверка   ",бар_проверка  , " проверка  " , проверка );
    
 //   ВерхняячертаBuffer1[0]=25;
//ВерхняячертаBuffer1[1]=25;
//ВерхняячертаBuffer1[2]=25;
//ВерхняячертаBuffer1[3]=25;
//ВерхняячертаBuffer1[4]=25;
//ВерхняячертаBuffer1[5]=25;
//ВерхняячертаBuffer1[6]=25;
//ВерхняячертаBuffer1[7]=25;
//ВерхняячертаBuffer1[8]=25;
//ВерхняячертаBuffer1[9]=25;
//ВерхняячертаBuffer1[10]=25;
//ВерхняячертаBuffer1[11]=25;
         for (i=0;i<100;i++){  СинняячертаBuffer3[i]= Open[i];}
          for (i=330;i<500;i++){  СинняячертаBuffer3[i]= Open[i];}

    
//----
   return(0);
  }
//+------------------------------------------------------------------+
 
MikeM:
我使用DRAW_LINE。 DRAW_SECTION一个误解

谢谢你!!!。我会试一试的。等等,有什么可尝试的?线条是一条实心线,它需要逐个元素准确地填充,但这是一首完全不同的歌曲--15秒后我已经想明白了。
 
Lonely_man:
请告诉我,代码中的哪个函数或哪一行负责调用专家的属性(输入参数框)? 我注意到在一些EA中,当它在图表上工作时,不可能调用这个窗口,也就是说,你只能在初始启动时看到EA中设置的参数,然后你不能从图表中看到那里写了什么。

如果在操作过程中没有调用属性窗口,那么专家顾问将以循环模式工作。
 
High1 = iHigh (Symbol(), PERIOD_W1, 0); // максимум этой недели
Low1 = iLow (Symbol(), PERIOD_W1, 0); // минимум этой недели

在专家顾问中有这样一个东西,在演示和实际中都很好,但我想在测试器中运行代码,但在最大的时间框架D1,如何写一个函数,如果可能的话,这将使本周 最大和最小数据仍在测试器中?

 
BeerGod:

在专家顾问中有这样一个东西,在演示和实际中都很好,但我想在测试器中运行代码,但在最大的时间框架D1,如何写一个函数,如果可能的话,这将使本周 最大和最小数据仍在测试器中?

它不是以你刚才写的方式来阅读它们吗?在可视化模式下,用F12检查,追踪这些变量的值,这是你要求的周...在猫头鹰中使用的最小的时间框架上运行猫头鹰。
 
Roman.:
难道它不像你刚才写的那样读它们吗?在可视化模式下,用F12的步骤检查,通过打印出你要求的这些变量的值,来追踪周...在猫头鹰中使用的最小的时间框架上运行猫头鹰。
事情是这样的,在测试器中我在可视化中放了一个注释,在那里这些数值总是为零,尽管加载了几周的历史,在演示和实时中,注释给出了正确的数字。