编码帮助 - 页 466 1...459460461462463464465466467468469470471472473...786 新评论 PEDRO 2015.04.29 07:36 #4651 大家早上好。 我已经看过这个指标的很多版本,红色的蜡烛我从来没有出现过,可以纠正这个错误吗????。 非常感谢你。 #property indicator_separate_window #属性 indicator_buffers 2 #属性 indicator_color1 LimeGreen #属性 indicator_color2 Red //----指标缓冲区 double ind_buffer1[]; double ind_buffer2[]; double ind_buffer3[]; //---- double CB = 0, valueh1 = 0, valuel = 0, valueh = 0, value = 0, price = 0, hi = 1, lo = 1; 双重resh = 0, resl = 0, deltah = 0, deltal = 0。 int CurrentBar=0; //+------------------------------------------------------------------+ //|自定义指标初始化函数 //+------------------------------------------------------------------+ int init() { //---- 1个用于计数的额外缓冲区。 IndicatorBuffers(3)。 //---- 绘图设置 SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2); SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2); IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1); SetIndexDrawBegin(0, 34); SetIndexDrawBegin(1, 34); //---- 3个指标缓冲区的映射 if(!SetIndexBuffer(0, ind_buffer1) &&) !SetIndexBuffer(1, ind_buffer2) && ! !SetIndexBuffer(2, ind_buffer3)) Print("不能设置指标缓冲区!")。 //---- DataWindow和指标子窗口标签的名称 IndicatorShortName("DeltaForce")。 SetIndexLabel(0, "DF1")。 SetIndexLabel(1, "DF2"); //---- 初始化完成 返回(0)。 } //+------------------------------------------------------------------+ //| 三角洲部队 | //+------------------------------------------------------------------+ 开始() { for(CB = 0 ; CB <= Bars ; CB++) { CurrentBar = Bars - CB; 如果(Close[CurrentBar] > Close[CurrentBar+1]) { resl = 0。 如果(resh == 0) deltah = 0。 deltah = deltah + (Close[CurrentBar] - Close[CurrentBar+1])。 // valueh = High[CurrentBar]; resh= 1; } 如果(resh == 0) deltah = 0。 ind_buffer1[CurrentBar] = deltah; 如果(Close[CurrentBar] < Close[CurrentBar+1] ) { resh = 0。 if(resl == 0) deltal = 0。 deltal = deltal + (Close[CurrentBar+1] - Close[CurrentBar])。 //valuel = Low[CurrentBar]; resl= 1; } 如果(resl == 0 ) deltal=0。 ind_buffer2[CurrentBar] = deltal; } //---- done return(0); } //+------------------------------------------------------------------+ Coding help 问吧! 多时间框架指标 Mladen Rakic 2015.04.29 08:26 #4652 rookiespain: 大家早上好。我已经看过这个指标的很多版本,红色的蜡烛我从来没有出现过,能不能纠正一下这个错误????。 非常感谢你。 #property indicator_separate_window #属性 indicator_buffers 2 #属性 indicator_color1 LimeGreen #属性 indicator_color2 Red //---- 指标缓冲区 double ind_buffer1[]; double ind_buffer2[]; double ind_buffer3[]; //---- double CB = 0, valueh1 = 0, valuel = 0, valueh = 0, value = 0, price = 0, hi = 1, lo = 1; 双重resh = 0, resl = 0, deltah = 0, deltal = 0。 int CurrentBar=0; //+------------------------------------------------------------------+ //|自定义指标初始化函数 //+------------------------------------------------------------------+ int init() { //---- 1个用于计数的额外缓冲区。 IndicatorBuffers(3)。 //---- 绘图设置 SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2); SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2); IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1); SetIndexDrawBegin(0, 34); SetIndexDrawBegin(1, 34); //---- 3个指标缓冲区的映射 if(!SetIndexBuffer(0, ind_buffer1) &&) !SetIndexBuffer(1, ind_buffer2) && ! !SetIndexBuffer(2, ind_buffer3)) Print("不能设置指标缓冲区!")。 //---- DataWindow和指标子窗口标签的名称 IndicatorShortName("DeltaForce")。 SetIndexLabel(0, "DF1")。 SetIndexLabel(1, "DF2"); //---- 初始化完成 返回(0)。 } //+------------------------------------------------------------------+ //| 三角洲部队 | //+------------------------------------------------------------------+ 开始() { for(CB = 0 ; CB <= Bars ; CB++) { CurrentBar = Bars - CB; 如果(Close[CurrentBar] > Close[CurrentBar+1]) { resl = 0。 如果(resh == 0) deltah = 0。 deltah = deltah + (Close[CurrentBar] - Close[CurrentBar+1]) 。 // valueh = High[CurrentBar]; resh= 1; } 如果(resh == 0) deltah = 0。 ind_buffer1[CurrentBar] = deltah; 如果(Close[CurrentBar] < Close[CurrentBar+1] ) { resh = 0。 if(resl == 0) deltal = 0。 deltal = deltal + (Close[CurrentBar+1] - Close[CurrentBar])。 //valuel = Low[CurrentBar]; resl= 1; } 如果(resl == 0 ) deltal=0。 ind_buffer2[CurrentBar] = deltal; } //---- done return(0); } //+------------------------------------------------------------------+ 现在就试试吧:_test.mq4 附加的文件: _test.mq4 3 kb test.gif 68 kb Scott C 2015.04.29 11:03 #4653 Big Be: 斯坦威。一张显示所有这些的照片会有帮助。 大贝 嗨,Big Be。 说得好,我明天会发几张图。 欢呼声, 斯坦 Scott C 2015.04.29 23:57 #4654 这里是我手动标记的澳元图表。 红框是重叠的条形图。 在左边,有一个正方形,里面只显示三个柱子,所以不符合定义。 但是,如果这条腿很重要,比如说大于6 X ATR,我也会把它们算作一个波段(只是只有三条杠的时候很难交易),但是我想这个要求会使编码复杂化,所以我们可以暂时不考虑它。 谢谢。 斯坦 附加的文件: 2015-04-30_11-52.jpg 54 kb razo 2015.04.30 02:20 #4655 嗨,Mladen和Mrtools ! 我再次需要你们的帮助,请问你们能不能给这个指标添加一个视觉/听觉警报? 谢谢您的帮助,谢谢! 附加的文件: zz_igdr_zz.mq4 5 kb PEDRO 2015.04.30 07:17 #4656 MLADEN,早上好。 非常感谢你,已经尝试了他们的_测试和正确的出现。 我在这里有任何帮助,虽然它的优势比我多得多,虽然在ProRealTime / VISUALCHART是的,我可以帮助更多。 最好的问候。 Fausto Nunziante Del Gaudio 2015.04.30 17:42 #4657 你好。 我有一个指标,我想限制条形计算。 原来的代码是。 int start() { int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE] i changed it with this: [CODE]int start() { int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; int limit = MathMin(NBars-counted_bars,NBars-1); 它是正确的吗?该指标似乎工作正常,但我怀疑我是否真的限制了条形计算。 Mladen Rakic 2015.04.30 18:25 #4658 thefxpros: 你好。我有一个指标,我想限制条形计算。 原来的代码是 int start() { int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE] i changed it with this: [CODE]int start() { int counted_bars=IndicatorCounted(); if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; int limit = MathMin(NBars-counted_bars,NBars-1); 这样做正确吗?该指标似乎运行良好,但我怀疑我是否真的限制了条形计算。 thefxpros 不,要这样做。 int limit = MathMin(MathMin(Bars-counted_bars,Bars-1), NBars)。 但在这种情况下,你必须确保NBars总是>0 spacejockey 2015.05.01 03:41 #4659 你好mladen 如果你能帮助我,添加X和Y轴,那么我可以把它放在角落里,并可以调整字体大小。 并且可以调整字体大小,抱歉我的英语不好。 !X2014-PIPSv2 非常感谢。 附加的文件: x2014-pipsv2.mq4 5 kb Mladen Rakic 2015.05.01 05:09 #4660 blueface: 你好,mladen如果你能帮助我,添加X和Y轴,那么我就可以把它放在角落里了。 并可以调整字体大小,抱歉我的英语不好。 !X2014-PIPSv2 非常感谢。 蓝脸 你已经有了:代码中的posX和posY变量 1...459460461462463464465466467468469470471472473...786 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
大家早上好。
我已经看过这个指标的很多版本,红色的蜡烛我从来没有出现过,可以纠正这个错误吗????。
非常感谢你。
#property indicator_separate_window
#属性 indicator_buffers 2
#属性 indicator_color1 LimeGreen
#属性 indicator_color2 Red
//----指标缓冲区
double ind_buffer1[];
double ind_buffer2[];
double ind_buffer3[];
//----
double CB = 0, valueh1 = 0, valuel = 0, valueh = 0, value = 0, price = 0, hi = 1, lo = 1;
双重resh = 0, resl = 0, deltah = 0, deltal = 0。
int CurrentBar=0;
//+------------------------------------------------------------------+
//|自定义指标初始化函数
//+------------------------------------------------------------------+
int init()
{
//---- 1个用于计数的额外缓冲区。
IndicatorBuffers(3)。
//---- 绘图设置
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2);
IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1);
SetIndexDrawBegin(0, 34);
SetIndexDrawBegin(1, 34);
//---- 3个指标缓冲区的映射
if(!SetIndexBuffer(0, ind_buffer1) &&)
!SetIndexBuffer(1, ind_buffer2) && !
!SetIndexBuffer(2, ind_buffer3))
Print("不能设置指标缓冲区!")。
//---- DataWindow和指标子窗口标签的名称
IndicatorShortName("DeltaForce")。
SetIndexLabel(0, "DF1")。
SetIndexLabel(1, "DF2");
//---- 初始化完成
返回(0)。
}
//+------------------------------------------------------------------+
//| 三角洲部队 |
//+------------------------------------------------------------------+
开始()
{
for(CB = 0 ; CB <= Bars ; CB++)
{
CurrentBar = Bars - CB;
如果(Close[CurrentBar] > Close[CurrentBar+1])
{
resl = 0。
如果(resh == 0)
deltah = 0。
deltah = deltah + (Close[CurrentBar] - Close[CurrentBar+1])。
// valueh = High[CurrentBar];
resh= 1;
}
如果(resh == 0)
deltah = 0。
ind_buffer1[CurrentBar] = deltah;
如果(Close[CurrentBar] < Close[CurrentBar+1] )
{
resh = 0。
if(resl == 0)
deltal = 0。
deltal = deltal + (Close[CurrentBar+1] - Close[CurrentBar])。
//valuel = Low[CurrentBar];
resl= 1;
}
如果(resl == 0 )
deltal=0。
ind_buffer2[CurrentBar] = deltal;
}
//---- done
return(0);
}
//+------------------------------------------------------------------+
大家早上好。
我已经看过这个指标的很多版本,红色的蜡烛我从来没有出现过,能不能纠正一下这个错误????。
非常感谢你。
#property indicator_separate_window
#属性 indicator_buffers 2
#属性 indicator_color1 LimeGreen
#属性 indicator_color2 Red
//---- 指标缓冲区
double ind_buffer1[];
double ind_buffer2[];
double ind_buffer3[];
//----
double CB = 0, valueh1 = 0, valuel = 0, valueh = 0, value = 0, price = 0, hi = 1, lo = 1;
双重resh = 0, resl = 0, deltah = 0, deltal = 0。
int CurrentBar=0;
//+------------------------------------------------------------------+
//|自定义指标初始化函数
//+------------------------------------------------------------------+
int init()
{
//---- 1个用于计数的额外缓冲区。
IndicatorBuffers(3)。
//---- 绘图设置
SetIndexStyle(0, DRAW_HISTOGRAM, STYLE_SOLID, 2);
SetIndexStyle(1, DRAW_HISTOGRAM, STYLE_SOLID, 2);
IndicatorDigits(MarketInfo(Symbol(), MODE_DIGITS) + 1);
SetIndexDrawBegin(0, 34);
SetIndexDrawBegin(1, 34);
//---- 3个指标缓冲区的映射
if(!SetIndexBuffer(0, ind_buffer1) &&)
!SetIndexBuffer(1, ind_buffer2) && !
!SetIndexBuffer(2, ind_buffer3))
Print("不能设置指标缓冲区!")。
//---- DataWindow和指标子窗口标签的名称
IndicatorShortName("DeltaForce")。
SetIndexLabel(0, "DF1")。
SetIndexLabel(1, "DF2");
//---- 初始化完成
返回(0)。
}
//+------------------------------------------------------------------+
//| 三角洲部队 |
//+------------------------------------------------------------------+
开始()
{
for(CB = 0 ; CB <= Bars ; CB++)
{
CurrentBar = Bars - CB;
如果(Close[CurrentBar] > Close[CurrentBar+1])
{
resl = 0。
如果(resh == 0)
deltah = 0。
deltah = deltah + (Close[CurrentBar] - Close[CurrentBar+1]) 。
// valueh = High[CurrentBar];
resh= 1;
}
如果(resh == 0)
deltah = 0。
ind_buffer1[CurrentBar] = deltah;
如果(Close[CurrentBar] < Close[CurrentBar+1] )
{
resh = 0。
if(resl == 0)
deltal = 0。
deltal = deltal + (Close[CurrentBar+1] - Close[CurrentBar])。
//valuel = Low[CurrentBar];
resl= 1;
}
如果(resl == 0 )
deltal=0。
ind_buffer2[CurrentBar] = deltal;
}
//---- done
return(0);
}
//+------------------------------------------------------------------+现在就试试吧:_test.mq4
斯坦威。
一张显示所有这些的照片会有帮助。
大贝嗨,Big Be。
说得好,我明天会发几张图。
欢呼声,
斯坦
这里是我手动标记的澳元图表。 红框是重叠的条形图。 在左边,有一个正方形,里面只显示三个柱子,所以不符合定义。 但是,如果这条腿很重要,比如说大于6 X ATR,我也会把它们算作一个波段(只是只有三条杠的时候很难交易),但是我想这个要求会使编码复杂化,所以我们可以暂时不考虑它。
谢谢。
斯坦
嗨,Mladen和Mrtools !
我再次需要你们的帮助,请问你们能不能给这个指标添加一个视觉/听觉警报?
谢谢您的帮助,谢谢!
MLADEN,早上好。
非常感谢你,已经尝试了他们的_测试和正确的出现。
我在这里有任何帮助,虽然它的优势比我多得多,虽然在ProRealTime / VISUALCHART是的,我可以帮助更多。
最好的问候。
你好。
我有一个指标,我想限制条形计算。
原来的代码是。
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE]
i changed it with this:
[CODE]int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(NBars-counted_bars,NBars-1);它是正确的吗?该指标似乎工作正常,但我怀疑我是否真的限制了条形计算。
你好。
我有一个指标,我想限制条形计算。
原来的代码是
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(Bars-counted_bars,Bars-1);[/CODE]
i changed it with this:
[CODE]int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit = MathMin(NBars-counted_bars,NBars-1);thefxpros
不,要这样做。
int limit = MathMin(MathMin(Bars-counted_bars,Bars-1), NBars)。
但在这种情况下,你必须确保NBars总是>0
你好mladen
如果你能帮助我,添加X和Y轴,那么我可以把它放在角落里,并可以调整字体大小。
并且可以调整字体大小,抱歉我的英语不好。
!X2014-PIPSv2
非常感谢。
你好,mladen
如果你能帮助我,添加X和Y轴,那么我就可以把它放在角落里了。
并可以调整字体大小,抱歉我的英语不好。
!X2014-PIPSv2
非常感谢。蓝脸
你已经有了:代码中的posX和posY变量