[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 698

 
valenok2003:

版权
string copyright = "\xA9";
 
ToLik_SRGV:

谢谢你
 
我再次回到我问的问题:https://forum.mql4.com/ru/15972/page693 - 这里,指标和指标之间的参数转移 - 专家。 当然,建议使用全局变量部分地解决了这个问题,但另一个问题出现了!那就是:"全局变量 "是什么?根据全局变量的描述,.........GV变量只能是双倍类型,但我们如何期望Expert Advisors在接收全局变量的值时 知道该变量是否来自某个符号和时间框架?
 
Infinity:
我再次回到我问的问题:https://forum.mql4.com/ru/15972/page693 --这里,指标和指标之间的参数转移--专家。 当然,建议使用全局变量部分地解决了这个问题,但另一个问题出现了!那就是:"全局变量 "是什么?根据全局变量的描述,.........GV变量只能是双倍类型,但我们如何期望Expert Advisors在接收全局变量的值时知道该变量是否来自某个符号和时间框架?

对符号进行编码。尽管为此可以使用变量名称,例如EUSRUSD_H1_Var1
 
cyclik33:


在戈兰多计划中制造,加上你的马汀。

//+------------------------------------------------------------------+
//| Copyright 2005, Gordago Software Corp.
//| http://www.gordago.com/ |
//| 2.0版本|
//+------------------------------------------------------------------+




空白的OpenBuy() {
双重dStopLoss = 0, dTakeProfit = 0。
double Lots_New = Lot;

如果(isLossLastPos(NULL, -1, MAGIC))
Lots_New *= 2;
else if (!isLossLastPos(NULL, -1, MAGIC))
Lots_New = Lot;


如果(dBuyStopLossPoint > 0)
dStopLoss = Bid-dBuyStopLossPoint*Point。

如果(dBuyTakeProfitPoint > 0)
dTakeProfit = Bid + dBuyTakeProfitPoint * Point;

int numorder = OrderSend(Symbol(, OP_BUY, Lots_New, Ask, nSlippage, dStopLoss, dTakeProfit, sNameExpert, MAGIC, 0, colorOpenBuy);

如果(numorder > -1 && lFlagUseSound)
PlaySound(sSoundFileName)。
}

空白的OpenSell() {
双重dStopLoss = 0, dTakeProfit = 0。
double Lots_New = Lot;

如果(isLossLastPos(NULL, -1, MAGIC))
Lots_New *= 2;
else if (!isLossLastPos(NULL, -1, MAGIC))
Lots_New = Lot;

如果(dSellStopLossPoint > 0)
dStopLoss = Ask+dSellStopLossPoint*Point。

如果(dSellTakeProfitPoint > 0)
dTakeProfit = Ask-dSellTakeProfitPoint*Point。

int numorder = OrderSend(Symbol(,OP_SELL, Lots_New, Bid, nSlippage, dStopLoss, dTakeProfit, sNameExpert, MAGIC, 0, colorOpenSell);

如果(numorder > -1 && lFlagUseSound)
PlaySound(sSoundFileName)。
}

你有

空白的OpenBuy() {

双重dStopLoss = 0, dTakeProfit = 0。
double Lots_New = Lot;

如果(isLossLastPos(NULL, -1, MAGIC))
Lots_New *= 2;
else if (!isLossLastPos(NULL, -1, MAGIC))

Lots_New = Lot;

是一个函数,在这个函数的最开始,你将值=Lot分配给Lots_New变量。

想一想,如果你总是把它恢复到原来的状态,它以后会有什么变化?

我在哪里告诉你要写?在启动函数之前的 外部变量中...

并将批量值归一到正确的大小。

Lots_New = NormalizeLot(Lot*2, False, "")。

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 16.05.2008                                                     |
//|  Описание : Возвращает нормализованное значение торгуемого лота.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    lo - нормализуемое значение лота.                                       |
//|    ro - способ округления          (   False    - в меньшую,               |
//|                                        True     - в большую сторону)       |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//+----------------------------------------------------------------------------+
double NormalizeLot(double lo, bool ro=False, string sy="") {
  double l, k;
  if (sy=="" || sy=="0") sy=Symbol();
  double ls=MarketInfo(sy, MODE_LOTSTEP);
  double ml=MarketInfo(sy, MODE_MINLOT);
  double mx=MarketInfo(sy, MODE_MAXLOT);

  if (ml==0) ml=0.1;
  if (mx==0) mx=100;

  if (ls>0) k=1/ls; else k=1/ml;
  if (ro) l=MathCeil(lo*k)/k; else l=MathFloor(lo*k)/k;

  if (l<ml) l=ml;
  if (l>mx) l=mx;

  return(l);
}
 
Vinin:

编纂符号。虽然,我们可以为此目的使用变量名称,例如,EUSRUSD_H1_Var1


对了,谢谢你。但仍然不清楚...事实证明,在指标中我必须写出所有的变量名,对应于整个可能的符号数量。而如果我想在某个预定义的时刻从指标中传递一个参数,我将不得不编写指标的符号定义代码。然后使用比较或其他案例类型的函数,我将确定将参数写到哪个命名的全局变量 上! 我的理解都是正确的!?

这里还有一个反问句,或者只是想了解你的意见。在分析的本质中存在着所谓的 "模式"。模式不过是基于某些重复时刻(或参数)的模式。但不幸的是,市场是一种不稳定的物质,所以每一种模式在某种程度上都可以被当作一种不确切的模式,或者说有点偏离某些参数,是忠于模式的形成。如果我们把任何时间框架,例如15分钟,作为分析的基础,我们会看到,在某些条件下,上面会有一定数量的模式出现。而会有一些情况没有形成模式,但这些情况非常接近模式的形成,它们只是不符合某些特定的参数(它们偏离了一些)。这种情况本来是可以通过合理的模式形成条件来避免的。在这种情况下,会有更多的模式和更多的可能性进入市场,但由于参数没有严格规定,虚假模式的数量会增加。 (如果我们考虑到在严格的参数下,该模式甚至可以在这些条件下一天内不出现)。

问题!我应该用什么参数(硬条件或软条件)来形成一个模式?

 

帮我解决一个问题 !


我搜索的是未完成或待完成的订单。如果它们是可用的,那么我就确定哪个订单是买入或卖出。在某些条件下(如果一个比另一个大或比第三个小),我想关闭这个订单。改变其参数并再次打开它。

问题是,总是有一个信号来关闭订单和打开订单。这就是为什么我的订单关闭,然后又打开,如此反复,打开又关闭......。)))

如何解决这个问题?嘎


 
Infinity:


完全正确,谢谢你但还是不清楚。事实证明,在我的指标中,我将需要规定所有的变量名称,对应于整个可能的字符数。而如果我想在某个预定义的时刻从指标中传递一个参数,我将不得不编写指标的符号定义代码。然后使用比较或其他案例类型的函数,我将确定将参数写到哪个命名的全局变量上! 我的理解都是正确的!?

而只是一个反问,或者只是想听听你的意见。在分析的本质中存在着所谓的 "模式"。模式不过是基于某些重复的时刻(或参数)的模式。但不幸的是,市场是一种不稳定的物质,所以每一种模式在某种程度上都可以被当作一种不确切的模式,或者说有点偏离某些参数,是忠于模式的形成。如果我们把任何时间框架,例如15分钟,作为分析的基础,我们会看到,在某些条件下,上面会有一定数量的模式出现。而会有一些情况没有形成模式,但这些情况非常接近模式的形成,它们只是不符合某些特定的参数(它们偏离了一些)。这种情况本来是可以通过合理的模式形成条件来避免的。在这种情况下,会有更多的模式和更多的可能性进入市场,但由于参数没有严格规定,虚假模式的数量会增加。 (如果我们考虑到在严格的参数下,该模式甚至可以在这些条件下一天内不出现)。

问题!我应该用什么参数(硬条件或软条件)来形成一个模式?

你可以用参数这样做,但不能用模式。你必须首先定义标准。相似,不相似。如果是类似的,那么在什么程度上?至少是多少(百分数)。在一种情况下,是时间部分,而价格部分。如何将它们相互关联起来。虽然我可以附加一个神经元层。科霍宁层在这方面做得很好
 

帮我解决一个问题 !


我搜索的是未完成或待完成的订单。如果它们是可用的,那么我就确定哪个订单是买入或卖出。在某些条件下(如果一个比另一个大或比第三个小),我想关闭这个订单。改变其参数并再次打开它。

问题是,总是有一个信号来关闭订单和打开订单。这就是为什么我的订单被关闭,又被打开,所以它打开又关闭......)))

如何解决这个问题?嘎
 
Necron:
罗杰,谢谢,但还是不能正常工作。尝试了另一次拖网,但错误仍然存在 :( 拖网一个姿势和同时拖网几个姿势有什么区别吗?

我明白了,你在函数的开头定义了变量ro,但你没有把它分配到任何地方,也就是说,它是0。