免费做有趣的事情 - 页 32

 
inoy:

你好。也许有人会有兴趣写出原始的拖网。我在网上没有找到类似的东西。实际的ToR:止损和盈利都在移动(TralTP),但总是只在PRICE的方向上移动,即两边的范围只缩小。这一切都很简单,"诀窍 "是,拖网的变化是以SL或TP的%(而不是以点)为单位。例如:我有一个开仓,SL=300,TP=100(总共400点=100%,SL=75%,TP=25%的范围)。价格移动+50点,止损设置为150点。从价格上看150点,即-100。总的来说,最初的3/1比例得到了保留。价格已经回到了开盘点(0),为了SL 100点,这意味着我们必须把TP移到+33。所以等等。

价格不会因为一些奇妙的跳跃(+50,-50)而移动......技术规范 是无法解决的。或者说,它可以被解决,但不会是你想要的结果。拖网会对每一个刻度做出反应,范围会比你希望的更快地缩小。我并不是说每一个刻度都会变窄,但只要你通过几个点,范围就会变窄。而且我说的还不是五位数,拖网对报价会更加敏感,范围会更快缩小。

 
我立即想到了这一点,这就是步骤变量的作用。线索不应该在 "几个点 "内移动,而是在给定的百分比范围内移动,例如当前SL-TP距离的25%。另外,该任务在一般情况下可以用不同的方式解决(作为一种选择):用户可以在用户指定的时间间隔内,以分钟为单位检查原始的盈亏比。意义不会改变,思想的本质仍然不变。更好的是,你可以同时进行。
 
inoy:
我马上就想到了,这就是步骤变量的作用。拖网不应该在 "几个点 "内移动,而应该在给定的百分比范围内移动,例如,当前价差SL-TP的25%。另外,该任务在一般情况下可以用不同的方式解决(作为一种选择):用户应该在用户指定的时间间隔内检查原始的盈亏比,单位为分钟。意思不会改变,思想的本质仍然是一样的。更好的是,你可以同时进行。

糟糕......。对不起...误解了那个参数步骤!:))

但是,我还是要写一个出声的想法。你不应该从头开始拖网,而是依靠技术分析...

 
你可能是对的。但除了TA,还有概率分析,它解决了不同风险比率下的选择问题。我从Elder描述的Shapiro测试中得到了拖网的想法。
 

你好,我找到了一个很好的指标,它至少能给出20个点的明确信号,但信号来得非常少,而且出乎意料,我没有时间去跟踪它们。我试着放一个警报(哔哔声),但它不起作用,我希望我也能把它作为一个专家顾问来使用。我已经用了五十年了,它是个好东西!我已经用了一年多了,它是一个好东西!

这里有一个奇迹

附加的文件:
 
DDEEDD:

你好,我找到了一个很好的指标,它至少能给出20个点的明确信号,但信号来得非常少,而且出乎意料,我没有时间去跟踪它们。我试着放一个警报(哔哔声),但它不起作用,我希望我也能把它作为一个专家顾问来使用。我已经用了五十年了,它是个好东西!我已经用了一年多了,它是一个好东西!

这里有一个奇迹。


该指标在1巴的时候就会被窥视。

更准确地说--它在检查收盘价的条形上画出一个进场点。这意味着你不会在条形的开盘价 进场,而是在收盘价进场,也就是晚一个条形。

这就是它的分析结果--收盘价穿越拖网线(与上一次翻转的距离为nPips)。

你是在一个平面上



 

我在使用专家顾问的同时,当然也有损失,但与总体损失相比,这些损失是微不足道的。

 

我在CodeBase 中发现了一个有趣的指标,我想把它稍作改变。

输出到右上角的
工作TF
呼叫中心
DnPrise

以点为单位的线间距离

也许谁能重拍它?

附加的文件:
 
大家好。我想用XLab_ZZZ主题为我的EA做一个快速的人字形。但是XLab_ZZZ从历史的开始算起,我需要右边的前两个断点。我写了,但它有故障,我不知道它在哪里。用肉眼看一下,也许你会发现错误在哪里。看看开盘价
//+------------------------------------------------------------------+
//|                                                   1+FZZ_test.mq4 |
//+------------------------------------------------------------------+

 int Step=30;
 string tmp,line[4]; int last_time_signal_ss,last_time_signal_bs;
 double p1,p2,p3,p4,p5; int mp, t1,t2,t3,t4,t5;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
     mp=1; if(Digits==3 || Digits==5)mp=10; 
     for (int i=0;i<4;i++)line[i]="Line"+Symbol()+"_"+i+"_ZZ";
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   DeleteObjects("ZZ");Comment("");
//----
   return(0);
  }

void DeleteObjects(string text) {
   string name;
   for (int i = ObjectsTotal() - 1; i >= 0; i--) {
      name = ObjectName(i);
      if (StringFind(name,text) > -1) ObjectDelete(name);
   }
}
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
  
  Signal();
 //_ObjectSet(line[0], p2,t2,Close[1],Time[0]);
 _ObjectSet(line[1], p3,t3,p2,t2);
 _ObjectSet(line[2], p4,t4,p3,t3);
 _ObjectSet(line[3], p5,t5,p4,t4);
//----
   return(0);
  }
//+------------------------------------------------------------------+
int Signal(){
int x,n;
p1=0;p2=0;p3=0;p4=0;p5=0; t1=0;t2=0;t3=0;t4=0;t5=0;
double hi=High[1], lo=Low[1], c=Close[1]; int th=0,tl=0;

for(int i=1; i<500;i++)
   {
    
    if(p2==0)
    {
    if(High[i]>hi){hi=High[i]; th=Time[i];}
    if(Low [i]<lo){lo=Low [i]; tl=Time[i];}
    if(hi-lo>Step*Point*mp)
      {
       if(c>lo && c<hi ){
                          if(th>tl){p2=hi;t2=th;p3=lo;t3=tl;}
                          if(tl>th){p2=lo;t2=tl;p3=hi;t3=th;}
                          continue;
                         }
       }
    }
    
    if(p2>0 && p4==0)
     {
     n=i;
       if(p3>p2){
                 if(p3-Low [n]>Step*Point*mp){p4=Low [n];t4=Time[n];continue;}
                 if(High[n]>p3)if(p3-Low [n]< Step*Point*mp){p3=High[n];t3=Time[n];}
                }  
       if(p3<p2){
                 if(High[n]-p3>Step*Point*mp){p4=High[n];t4=Time[n];continue;}
                 if(Low[n]<p3){p3=Low[n];t3=Time[n];}
                }  
     }
    
    if(p4>0)
      {
       x=i;
       if(p4>p3){
                 if(p4-Low [x]>Step*Point*mp){p5=Low [x];t5=Time[x];break;}
                 if(High[x]>p4){p4=High[x];t4=Time[x];}
                 
                }  
       if(p4<p3){
                 if(High[x]-p4>Step*Point*mp){p5=High[x];t5=Time[x];break;}
                 if(Low[x]<p4){p4=Low[x];t4=Time[x];}
                 
                }  
      }
    if(p5>0)break;
    
    }

return(0);}

void _ObjectSet(string name, double price1, int time1, double price2,int time2) {
   if(ObjectFind(name)!= -1)ObjectDelete(name); 
   ObjectCreate(name,OBJ_TREND,0,0,0,0,0);
   ObjectSet(name,OBJPROP_STYLE,STYLE_SOLID);
   ObjectSet(name,OBJPROP_COLOR,DodgerBlue);
   ObjectSet(name, OBJPROP_TIME1, time1);
   ObjectSet(name, OBJPROP_PRICE1, price1);
   ObjectSet(name, OBJPROP_TIME2, time2);
   ObjectSet(name, OBJPROP_PRICE2, price2);
   ObjectSet(name,OBJPROP_RAY,false); 
}
 
FION:
我想根据该主题作者的XLab_ZZZ主题,为EA做一个快速的人字形。

首先,你算错了方向。 其次,你完全扼杀了我的 "之 "字形的目的 :)

你应该把指标中的代码直接输入到专家顾问中,因为它是这样的。如果EA在启动时计算整个历史(或自指定的条形图),则不会发生任何事情。