如果我错了请解释,我认为脚本代码的后半部分_"void SetArrow(int cd, color cl," 是指指标中 的"_OnInit() " 函数的部分。.指标,而脚本的第一部分_"voidOnStart()"是指指标中的函数 "_OnCalculate"?我的意思是,大致上说,这个脚本一开始有1)计算,然后2)初始化而已。在指标中,情况恰恰相反。
它是一个用户定义的函数,超出了其他函数的范围。
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 12.10.2007 |//| Описание : Установка значка на графике, объект OBJ_ARROW. |//+----------------------------------------------------------------------------+//| Параметры: |//| cd - код значка |//| cl - цвет значка |//| nm - наименование ("" - время открытия текущего бара) |//| t1 - время открытия бара (0 - текущий бар) |//| p1 - ценовой уровень (0 - Bid) |//| sz - размер значка (0 - по умолчанию) |//+----------------------------------------------------------------------------+void SetArrow(int cd, color cl,
string nm="", datetime t1=0, double p1=0, int sz=0) {
if (nm=="") nm=DoubleToStr(Time[0], 0);
if (t1<=0) t1=Time[0];
if (p1<=0) p1=Bid;
if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_ARROW, 0, 0,0);
ObjectSet(nm, OBJPROP_TIME1 , t1);
ObjectSet(nm, OBJPROP_PRICE1 , p1);
ObjectSet(nm, OBJPROP_ARROWCODE, cd);
ObjectSet(nm, OBJPROP_COLOR , cl);
ObjectSet(nm, OBJPROP_WIDTH , sz);
}
longBarsBuffer[i]=High[h]+5*Point(); - то что необходимо получить.
else
longBarsBuffer[i]=0.0;
更多
职能
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 26.02.2008 |//| Описание : Возвращает реальный номер бара от начала суток. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента (NULL или "" - текущий символ) |//| tf - таймфрейм ( 0 - текущий таймфрейм) |//| dt - дата и время открытия бара ( 0 - текущее время) |//+----------------------------------------------------------------------------+int iBarOfDayReal(string sy="", int tf=0, datetime dt=0) {
if (sy=="" || sy=="0") sy=Symbol();
if (tf<=0) tf=Period();
if (dt<=0) dt=TimeCurrent();
if (tf>PERIOD_D1) {
Print("iBarOfDayReal(): Таймфрейм должен быть меньше или равен D1");
return(0);
}
int cd=TimeDay(dt); // текущий день месяцаint nb=iBarShift(sy, tf, dt, False); // номер текущего бараint bd=0; // номер бара от начала сутокwhile(TimeDay(iTime(sy, tf, nb))==cd) {
nb++;
bd++;
}
return(bd);
}
亲爱的朋友们,我将尽力解释我所要实现的目标.........否则我就会做对......否则我就会把大家都搞糊涂!"。
...让我们继续对话...根据我的理解,这项任务可以简化为以下内容。为了简化,我们将只调查昨天,即上半年的情况。
首先,我们寻找最早的蜡烛(从昨天图表的左侧看),其收盘价高于开盘价,即我们寻找第一根看涨的蜡烛。如果找到了这支蜡烛,那么从它开始(包括它)到当前一天的最新蜡烛,我们应该找到具有最高点的蜡烛。例如,如果第一根看涨蜡烛的开盘时间 是10:00,那么从它到23:00的蜡烛,我们应该寻找具有最高点的蜡烛。对吗?
继续对话...根据我的理解,这项任务可以简化为以下内容。为简化起见,我们将只考察昨天的H1期。
首先,我们寻找最早的蜡烛(从昨天图表的左侧看),其收盘价高于开盘价,即我们寻找第一根看涨的蜡烛。如果找到了这支蜡烛,那么从它开始(包括它)到当前一天的最新蜡烛,我们应该找到具有最高点的蜡烛。例如,如果第一根看涨蜡烛的开盘时间是10:00,那么从它到23:00的蜡烛,我们应该寻找具有最高点的蜡烛。对吗?
哦,感谢上帝...我被理解了!是的!是的!是的!这正是我所要做的。如果你知道,你能告诉我怎么做吗?
哦,感谢上帝...我知道了!是的!是的!是的!这正是我所要做的。如果你知道,你能告诉我怎么做吗?
如果是昨天的蜡烛图,它将是iHigest()中的结束蜡烛图,而开始蜡烛图将是由iBarShift() 获得的第二天的00:00(即今天的蜡烛图)。
算法实例。
1.今天我们要在昨天的小时线中寻找第一根牛股。让它成为endBar的索引
确定今天的第一条一小时酒吧。或者说,它将是零。
3.在iHighest()中,将倒数第二个参数设置为endBar(或者准确的说是endBar+1),最后一个参数为1。
寻求的结果是High[iHighest(with relevant parameters)] //或者相应的变量,其值在前一个子句中被分配。
哦,感谢上帝...我被理解了!是的!是的!是的!这正是我所要做的。如果你知道,你能告诉我怎么做吗?
惨不忍睹!尝试。
r772ra非常感谢您!!。脚本做到了我所需要的!!在最后一个代码块中,我并不清楚所有的东西,但我会想办法解决。我会想办法的。我将尝试在指标中使用它。
我将 尝试在一个指标中使用它。
如果你将来有任何问题,请用一种让程序员更容易理解的方式提出来。我知道了,我会考虑到的!
非常感谢您!
r772ra 非常感谢您!!。脚本做到了我所需要的!!在最后一个代码块中,我并不清楚所有的东西, 但我会想办法解决。我会想办法的。我将尝试把它应用于指标。
好吧,我会考虑到这一点的!
非常感谢您!
究竟是什么不清楚呢?
如果我错了请解释,我认为脚本代码的后半部分_"void SetArrow(int cd, color cl," 是指指标中 的"_OnInit() " 函数的部分。.指标,而脚本的第一部分_"void OnStart()"是指指标中的函数 "_OnCalculate"?我的意思是,大致上说,这个脚本一开始有1)计算,然后2)初始化而已。在指标中,情况恰恰相反。
如果我错了请解释,我认为脚本代码的后半部分_"void SetArrow(int cd, color cl," 是指指标中 的"_OnInit() " 函数的部分。.指标,而脚本的第一部分_"void OnStart()"是指指标中的函数 "_OnCalculate"?我的意思是,大致上说,这个脚本一开始有1)计算,然后2)初始化而已。在指标中,情况恰恰相反。
它是一个用户定义的函数,超出了其他函数的范围。
函数调用,来自任何其他函数
我认为你不需要在指示器中使用它,缓冲器负责绘图。
换句话说。
更多
职能
而且,该呼吁
找到从一天开始的条数(当前日不重新计算),该条数进入历史。