新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1092

 
v0van1990:

这个函数给了我关于非标准的最后形成的分形的信息,我在EA的开始就改变了这些非标准的分形。


这个函数给了我指标 "takbir "的值,我不知道这个指标是做什么的。

v0van1990:

但我想不出来如何才能解决以下问题。

double StL=NormalizeDouble(Tupf,_Digits);
这个函数只是将 "Tupf "的值四舍五入。
 
MakarFX:

这个函数给出了 "takbir "指标的值,这个指标的作用我不知道。

这个函数只是将 "Tupf "值四舍五入

塔克比尔指标画的是分形,仅此而已...

我正在解决一个问题。

1) 形成较低的分形- 在它之后,寻找最高的高点 - 如果未来的价格等于或低于分形的价格 - 卖出 - 停止设置在分形和卖出之间的最高点

2) 买入--类似地,创造一个高点--寻找最低的低点--买入--停在低点后面。

3) 如果价格没有出现在分形上--就会产生一个新的分形--开始一个新的循环。

 
v0van1990:

塔克比尔指标画出分形,仅此而已......

该功能

     {
      Tupf=iCustom(Symbol(),0,"takbir",Bars_left,Bars_right,0,i);
      if(Tupf>0)
         break;
     }
从 "takbir "接收数据,如果不是你想要的,你必须与 "takbir "处理。
 
MakarFX:

该功能

从 "takbir "获得数据,如果它与你想要的不一样,你必须处理 "takbir"。

我应该在指标中计算下分形后的最高点和上分 形后的最低点吗?

如果我在指标中做,怎么做?分形账户和输出指标 - 左右两边都有条形设置

 

v0van1990:

如果这是在一个指标中完成的,如何完成?分形账户和输出指标 - 左右两边都有条形设置

你问的是我根本看不到的东西。我不是一个心灵感应者

 
下午好!
我对我的屏幕进行了截图
string filename = "ChartScreenShot" + "CHART_OPEN" + ".png";
   bool scCapture = ChartScreenShot(0,filename,800,600,ALIGN_RIGHT);
   if (scCapture) 
    {
      PrintFormat("Take screenshot successful");
    } else {
      PrintFormat("Take screenshot failure");
    }
它是以标准方式保存的\MQL4\Files,但我在某些场合需要重新发送这个截图你能告诉我如何指定路径以便我能够做到吗? 因为我总是得到一个错误:无法找到指定的文件。


 
MakarFX:

你问的是我根本看不到的东西。我不是一个心灵感应者。

//+------------------------------------------------------------------+
//|                                                                  |
//|                 Copyright © 1999-2008, MetaQuotes Software Corp. |
//|                                         http://www.metaquotes.ru |
//+------------------------------------------------------------------+
#property copyright "© 2007 Takbir"
#property link      "www.stigal.com"
//----
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
#property indicator_width1  1
#property indicator_width2  1
//----
double UpperFr[];
double LowerFr[];
//----
int Bars_left=5;
int Bars_right=5;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void init()
  {
   SetIndexBuffer(0, UpperFr);
   SetIndexBuffer(1, LowerFr);
   //
   SetIndexEmptyValue(0, 0);
   SetIndexEmptyValue(1, 0);
   //
   SetIndexStyle(0, DRAW_ARROW);
   SetIndexArrow(0, 217);
   //
   SetIndexStyle(1, DRAW_ARROW);
   SetIndexArrow(1, 218);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void start()
  {
   int counted_bars = IndicatorCounted();
   if(counted_bars < 0)  return(-1);
   if(counted_bars > 0)   counted_bars--;
   int limit = Bars - counted_bars;
   if(counted_bars==0) limit-=1+Bars_left;
//-----
   double dy=0;
     for(int i=1; i<=20; i++)
     {
      dy+=0.3*(High[i]-Low[i])/20;
     }
   for(i=1+Bars_right; i<=limit+Bars_left; i++)
     {
      UpperFr[i]=0;
      LowerFr[i]=0;
//----
      if (IsUpperFr(i)) UpperFr[i]=High[i] + dy;
      if (IsLowerFr(i)) LowerFr[i]=Low[i] - dy;
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsUpperFr(int bar)
  {
   for(int i=1; i<=Bars_left; i++)
     {
      if (bar+i>=Bars) return(false);

      if (High[bar] < High[bar+i]) return(false);
     }
   for(i=1; i<=Bars_right; i++)
     {
      if (bar-i < 0) return(false);
      if (High[bar] < High[bar-i]) return(false);
     }
//----
   return(true);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool IsLowerFr(int bar)
  {
   for(int i=1; i<=Bars_left; i++)
     {
      if (bar+i>=Bars) return(false);
      if (Low[bar] > Low[bar+i]) return(false);
     }
   for(i=1; i<=Bars_right; i++)
     {
      if (bar-i < 0) return(false);
      if (Low[bar] > Low[bar-i]) return(false);
     }
//----
   return(true);
  }
//+------------------------------------------------------------------+

对不起,这是该指标的代码

 
ponochka:
下午好!
我拍了一张截图,它被保存到标准路径\MQL4\Files,但我在某些场合需要重新发送这个截图你能告诉我如何指定路径以便我能够做到吗? 因为我总是得到一个错误:无法找到指定的文件。


阅读第一行。作出结论。
Документация по MQL5: Файловые операции
Документация по MQL5: Файловые операции
  • www.mql5.com
Из соображений безопасности в языке MQL5 строго контролируется работа с файлами. Файлы, с которыми проводятся файловые операции средствами языка MQL5, не могут находиться за пределами файловой "песочницы". общая папка всех установленных на компьютере терминалов  – обычно расположена в каталоге C:\Documents and Settings\All Users\Application...
 
v0van1990:

对不起,这里是指标的代码

你的猫头鹰按照代码中的规定做了一切。

如果你想要一个不在最后一个分形的停止,那么就改变停止检测功能。

也许你需要iHighest iLowest。

 
MakarFX:

剩下的在哪里?

Expert.mqh>

SignalTRIX.mqh>


SignalStoch.mqh>

追踪固定点数.mqh>

MoneyFixedRisk.mqh>。

对不起,我不知道什么在哪里。

我在哪里可以找到拖车和风险呢!?

附加的文件:
Lift.mq5  9 kb
TRIX.mq5  4 kb
原因: