[存档!]我将免费撰写任何专家或指标。 - 页 62

 
Roman.:

相关的..."祝 你玩得愉快!"
妈的,管理员在哪里,你不可能在论坛上!五年级。
 

/safety-summer-vacation-activated-schoolboys/

 

你好!

我需要一个基于TradeSig的指标,所以它的振幅比例将与威廉姆斯的振幅比例相同,而且振幅范围将符合从0%到-100%的水平比例。

P.S. 这是必要的,因为TradeSig在指标相互叠加的时候会 "移开"。

我提前表示感谢。

我的尊重。

附加的文件:
tradesig.mq4  3 kb
 
尊敬的交易员你好。我有一个非常好的通道指标,在报价历史上很好地显示了趋势,但在真实账户上却超额完成了。如果你不知道如何使用它,你可能会问:"当我不知道如何使用它时,我还剩下多少时间?我将非常感激。

//+------------------------------------------------------------------+
//| Multi.Period.mq4 | |
//| Copyright © 2010, Vladimir Hlystov |版权所有。
//| cmillion@narod.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, Vladimir Hlystov"
#属性链接 "http://cmillion.narod.ru"
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1 Lime
#property indicator_width1 1
#property indicator_color2 Lime
#property indicator_width2 1
#property indicator_color3 Blue
#property indicator_width3 1
#property indicator_color4 Blue
#property indicator_width4 1
#property indicator_color5 绿色
#property indicator_width5 1
#property indicator_color6 绿色
#property indicator_width6 1
#property indicator_color7 Red
#property indicator_width7 1
#property indicator_color8 Red
#property indicator_width8 1
//---- 输入参数
/*
PERIOD_M1 1 1分钟
PERIOD_M5 5 5分钟
PERIOD_M15 15 15分钟
PERIOD_M30 30 30分钟
PERIOD_H1 60 1小时
PERIOD_H4 240 4小时
PERIOD_D1 1440 1天
period_w1 10080
period_mn1 43200
*/
extern int timeframe1 = 5; //周期。可以是图表中的一个时期。0表示当前图表的周期。
extern int timeframe2 = 15; //周期。可以是图表中的一个时期。0表示当前图表的周期
extern int timeframe3 = 30; //周期。可以是图表中的一个时期。0表示当前图表的周期
extern int timeframe4 = 60; //周期。可以是图表中的一个时期。0表示当前图表的周期

//---- 缓冲区
double Buffer1[];
double Buffer2[];
double Buffer3[];;
double Buffer4[]; double Buffer5[];
双倍Buffer5[]。
double Buffer6[]。
双倍Buffer7[]。
double Buffer8[]。
//+------------------------------------------------------------------+
int init()
{
如果(timeframe1<Period())timeframe1=Period()。
如果(timeframe2<=timeframe1)timeframe2=next_period(timeframe1+1);
如果(timeframe3<=timeframe2)timeframe3=next_period(timeframe2+1);
如果(timeframe4<=timeframe3)timeframe4=next_period(timeframe3+1)。
//---- 指标线
SetIndexStyle(0,DRAW_LINE)。
SetIndexBuffer(0,Buffer1)。
SetIndexStyle(1,DRAW_LINE)。
SetIndexBuffer(1,Buffer2)。
SetIndexStyle(2,DRAW_LINE)。
SetIndexBuffer(2,Buffer3)。
SetIndexStyle(3,DRAW_LINE)。
SetIndexBuffer(3,Buffer4)。
SetIndexStyle(4,DRAW_LINE)。
SetIndexBuffer(4,Buffer5)。
SetIndexStyle(5,DRAW_LINE);
SetIndexBuffer(5,Buffer6)。
SetIndexStyle(6,DRAW_LINE);
SetIndexBuffer(6,Buffer7)。
SetIndexStyle(7,DRAW_LINE);
SetIndexBuffer(7,Buffer8)。
//----
SetIndexLabel(0, "4TF "+StrPer(timeframe1)+StrPer(timeframe2)+StrPer(timeframe3)+StrPer(timeframe4)) 。
return(0);
}
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted()。
如果(counted_bars>0) counted_bars--。
int limit=Bars-counted_bars。
for(int i=0; i<limit; i++)
{
Buffer1[i] = iMA(NULL,timeframe1,1,0,0,2,iBarShift(NULL,timeframe1,Time[i],false)) 。
Buffer2[i] = iMA(NULL,timeframe1,1,0,0,3,iBarShift(NULL,timeframe1,Time[i],false)) 。
Buffer3[i] = iMA(NULL,timeframe2,1,0,0,2,iBarShift(NULL,timeframe2,Time[i],false)) 。
Buffer4[i] = iMA(NULL,timeframe2,1,0,0,3,iBarShift(NULL,timeframe2,Time[i],false)) 。
Buffer5[i] = iMA(NULL,timeframe3,1,0,0,2,iBarShift(NULL,timeframe3,Time[i],false)) 。
Buffer6[i] = iMA(NULL,timeframe3,1,0,0,3,iBarShift(NULL,timeframe3,Time[i],false)) 。
Buffer7[i] = iMA(NULL,timeframe4,1,0,0,2,iBarShift(NULL,timeframe4,Time[i],false)) 。
Buffer8[i] = iMA(NULL,timeframe4,1,0,0,3,iBarShift(NULL,timeframe4,Time[i],false)) 。
}
return(0);
}
//+------------------------------------------------------------------+
int next_period(int per)
{
如果(per > 43200)返回(0)。
如果(per>10080)返回(43200)。
如果(per > 1440)返回(10080)。
如果(per > 240)返回(1440)。
如果(per>60)返回(240)。
如果(per>30)返回(60)。
如果(per>15)返回(30)。
如果(per>5)返回(15)。
如果(per>1)返回(5)。
如果(per == 1)返回(1)。
如果(per == 0) 返回(Period())
}
//+------------------------------------------------------------------+
字符串StrPer(int per)
{
如果(per == 1)返回(" M1 ")。
{ if (per == 5) return(" M5 ") 。
如果(per == 15)返回(" M15 ")。
如果(per == 30)返回(" M30 ")。
如果(per == 60)返回(" H1 ")。
如果(per == 240)返回(" H4 ")。
如果(per == 1440)返回(" D1 ")。
如果(per == 10080)返回(" W1 ")。
如果(per == 43200)返回(" MN1 ")。
return("period error")。
}
//+------------------------------------------------------------------+
 
sergii7777777:

尊敬的交易员你好。我有一个非常好的通道指标,在报价历史上很好地显示了趋势,但在真实账户上却超额完成了。如果你不知道如何使用它,你可能会问:"当我不知道如何使用它时,我还剩下多少时间?我将非常感激。

它不会重新绘制--它只是随着价格的移动而改变通道。
 
如果它被写成可以在真实的报价上画出一个通道,就像在报价历史上测试时那样,那就太棒了。100%的圣杯
 
sergii7777777:
如果它是以这样的方式写的,即它会像在报价历史上测试那样在真实的报价上画出通道,那就太棒了。100%的圣杯。


你说的 "真正的报价 "是什么意思--还不存在的报价或刚要出现的报价?

该指标根据目前可用的报价建立了一个通道。

当新的报价到来时--渠道发生变化--缩小、扩大--因为情况发生变化。

还是不清楚?

 
sergii7777777:
如果它被写成这样,它将在真实的报价上画出一个通道,就像它在报价历史上被测试一样,那就太棒了。100%的圣杯。

不要这样写。 你只需要明白你的EA应该以最古老的TF的速度工作。

专家顾问应该从最古老的时间框架上已经记录的条形图中接收时间数据。

那么你的专家顾问就不会有信号过冲的问题。

 

你好!在指标中,信号出现在横梁ZZ的时候,在工作的时候,一切都正确。

决定通过添加TF参数来观看旧的TF(工作M30,H1)......kludah出来了(信号不在这些条上,和不正确的显示梁)。

我哪里做错了?......请指教。提前感谢!!。

//+------------------------------------------------------------------+
//| 迪纳波利ZZ(ZigZag).mq4|
//|由CrazyChart改写。
//| |
//+------------------------------------------------------------------+
#property copyright "rewritten by CrazyChart"
#属性链接""

#property indicator_chart_window
#属性 indicator_buffers 5
#property indicator_color1 Red
#property indicator_color2 黄色
#property indicator_color3 Aqua
#property indicator_color4 绿色
#property indicator_color5 兰花
//---- 输入参数
外来的,外来的,外来的=1000。
外部长度=6。
外部inttern TF = 0。
//---- 缓冲区
双倍ExtMapBuffer1[]。
双倍ExtMapBuffer2[]。
双倍ExtMapBuffer3[]。
双倍ExtMapBuffer4[]。
双倍ExtMapBuffer5[]。
//double ExtMapBuffer2[]。
//+------------------------------------------------------------------+
//|自定义指标初始化功能
//+------------------------------------------------------------------+
int init()
{
//---- 指标
SetIndexEmptyValue(0,0.0)。
SetIndexStyle(0,DRAW_SECTION)。
SetIndexBuffer(0,ExtMapBuffer1)。

SetIndexStyle(1,DRAW_ARROW)。
SetIndexArrow(1,159);
SetIndexBuffer(1,ExtMapBuffer2)。

SetIndexStyle(2,DRAW_ARROW)。
SetIndexArrow(2,159);
SetIndexBuffer(2,ExtMapBuffer3)。

SetIndexStyle(3,DRAW_ARROW)。
SetIndexArrow(3,186);
SetIndexBuffer(3,ExtMapBuffer4)。

SetIndexStyle(4,DRAW_ARROW)。
SetIndexArrow(4,187);
SetIndexBuffer(4,ExtMapBuffer5)。





//----
return(0);
}
//+------------------------------------------------------------------+
//|Custor指示器去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{

return(0);
}
//+------------------------------------------------------------------+
//|自定义指标迭代函数|
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted()。
int shift,Swing,Swing_n,i,uzl,zu,zd,mv;
双LL,HH,BH,BL,NH,NL,shf。
double Uzel[10000][3];
字符串文本。
//从第一个柱子到当前柱子的循环(移位=0)。
Swing_n=0;Swing=0;uzl=0;
BH=iHigh(NULL, TF, barn);BL=iLow(NULL, TF, barn);zu=barn;zd=barn。

for (shift=barn;shift>=0;shift--) {
ExtMapBuffer2[shift]=EMPTY_VALUE。
ExtMapBuffer3[shift]=EMPTY_VALUE。
ExtMapBuffer4[shift]=EMPTY_VALUE。
ExtMapBuffer5[shift]=EMPTY_VALUE。
shf=0.2。
LL=10000000;HH=-100000000;
for (i=shift+Length;i>=shift+1;i--) {
if (iLow(NULL, TF,i)< LL) {LL=iLow(NULL, TF,i);}.
如果(iHigh(NULL, TF,i)>HH){HH=iHigh(NULL, TF,i); }
}


如果(iLow(NULL, TF,shift)<LL &&iHigh(NULL, TF,shift)>HH){
摆动=2。
如果(Swing_n==1) {zu=shift+1;}
如果(Swing_n==-1) {zd=shift+1;}
} else {
如果(iLow(NULL, TF,shift)<LL) {Swing=-1;}.
如果(iHigh(NULL,TF,shift)>HH){摆动=1;}
}

如果(Swing!=Swing_n &&Swing_n!=0) {
如果(Swing==2){
Swing=Swing_n;BH = iHigh(NULL, TF,shift);BL = iLow(NULL, TF,shift)。
}
uzl=uzl+1。
//低点
如果(Swing==1){
乌泽尔[Uzl][1]=zd。
乌泽尔[uzl][2]=BL。
ExtMapBuffer2[shift]=BL。
Print("ExtMapBuffer2[shift]", ExtMapBuffer2[shift];

ExtMapBuffer5[shift+3]=BL。

}
//高点
如果(Swing==-1){
乌泽尔[uzl][1]=zu。
乌泽尔[uzl][2]=BH。
ExtMapBuffer3[shift]=BH。
ExtMapBuffer4[shift+1]=BH+shf。
Print("ExtMapBuffer3[shift]", ExtMapBuffer3[shift];

}
BH = iHigh(NULL, TF,shift)。
BL = iLow(NULL, TF,shift)。
}

如果(Swing==1){
如果(iHigh(NULL,TF,shift)>=BH){BH=iHigh(NULL,TF,shift);zu=shift;}}
如果(swing==-1){
如果(iLow(NULL, TF,shift)<=BL) {BL=iLow(NULL, TF,shift); zd=shift;}}.
摆动_n=摆动。
}


for (i=1;i<=uzl;i++) {
mv=StrToInteger(DoubleToStr(Uzel[i][1],0))。
ExtMapBuffer1[mv]=Uzel[i][2];
// Print("parametre MV " , ExtMapBuffer1[mv];
}





return(0);
}
//+------------------------------------------------------------------+

 

我请求帮助写一个指标

我需要写一个指标或脚本(什么会起作用,怎么做更好),这将显示基于历史的价格的可能反转。

职责范围见附件。

我预先感谢你。

真诚的基里尔。

如果你有任何问题,请写信给 onepips@bk.ru