誰か5wmzのスクリプトを落書きしてくれ。 - ページ 15

 

商品市場には、毎日毎日、驚くような日中の値動きをする商品があるんだ。そのような楽器にこそ、この方法論は非常に有効だと私は考えています

例えば、NGV0(天然ガス)の昨日と今日の値動きを見て、よく言われるように、「10の違いを見つけろ」・・・。

 

レオニード誰が繁栄してもいいんです。どういたしまして。1つだけ質問があります。2年前、この受賞者たちはどこにいたのでしょうか?2008年、なぜ左手親指で1000%チョップする人がいなかったのか?

 

流行の兆しについては、以前からここで議論されており、有用なものまで出てきています。例えばここhttps://www.mql5.com/ru/articles/1508#6586。 しかし、彼らは何か不明瞭な指標を使うように勧めている(私はそれが好きではない)。おそらく、(レオニードさんのような)ろうそくの色を見るのが良いのでしょう。しかし、それでも著者の方法論は、タイムパターンを正直に決定することには対応しないのだ!ここからある種の数秘術が始まる...。だからこそ、皮肉に受け止める人も多いのではないでしょうか。

 

プリもエラーもない正常にコンパイルされたEAがなぜテストされないのか、トレードがないのか、何が足りないのか、教えていただけませんか?

extern double Lots          = 0.1;
extern double StopLoss      = 120;
extern double TakeProfit    = 120;

//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
  int cnt, ticket, total;
  static int prevtime = 0;
   
        total=OrdersTotal();
if(total<1){  //если  нет открытых позиций
//+------------------------------------------------------------------+
//|               Открытие позиций понедельника                      |
//+------------------------------------------------------------------+
if ( DayOfWeek()==5){//если сегодня вечер пятницы
if ( Hour() == 23)  {//если - 22 часа терминального времени
// BUY
       if ( Close[1]<= Open[24] && Close[23]<=Open[48] && Close[47]<=Open[72]) {    
        
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask+StopLoss*Point,3,0,Ask+TakeProfit*Point,"Regulest",0,0,Green);}
         if(ticket < 0) {
            Print("Ошибка открытия ордера BUY #", GetLastError()); 
            Sleep(10000);  prevtime = Time[1];  return (0); }}
// SELL
if ( DayOfWeek()==5){//если сегодня вечер пятницы
if ( Hour() == 23)  {//если - 22 часа терминального времени
    if ( Close[1]>= Open[24] && Close[23]<=Open[48] && Close[47]<=Open[72]) {
    
         ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid-StopLoss*Point,3,0,Bid-TakeProfit*Point,"Regulest",0,0,Red);
         if(ticket < 0) {
            Print("Ошибка открытия ордера SELL #", GetLastError()); 
            Sleep(10000);  prevtime = Time[1];  return (0); }
          } 
        }
      return(0);
     }}}
//+------------------------------------------------------------------+
//|                     Закрытие позиций                             |
//+------------------------------------------------------------------+
      if(OrderType()<=OP_SELL && OrderSymbol()==Symbol())  
        {
         if(OrderType()==OP_BUY)   // long position is opened
           {
            // should it be closed?
            if ( DayOfWeek()==1  && Hour() == 22)
                {
                 OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position
                 return(0); // exit
                }
              }
           }
         else // go to short position
           {
            // should it be closed?
            if ( DayOfWeek()==1  && Hour() == 22)
              {
               OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
               return(0); // exit
              }      
           }  
   return(0);
  }  
//+------------------------------------------------------------------+
 
Profitabl:

プリもエラーもない正常にコンパイルされたEAがなぜテストされないのか、トレードがないのか、何が足りないのか、教えていただけませんか?

条件が満たされていないのかもしれません。 例えばアルパリでは、金曜日に時値23のバーは存在しない。 22を、コメントにあるように

if ( Hour() == 23)  {//если - 22 часа терминального времени
 

いや、そういうわけではありません。CHFのEAを全部再コンパイルして欲しいのですが、テスターでは完璧にテストされているのに、オプションの「EA to trade」をオンにすると取引できません。 専門家として、EAチューニングについてどう思われますか?ところで、火曜日にはEAがトレードをしていたのですが、その後、コードに何か手を加えたら、トレードをしなくなりました。正常なEAが動かなくなる理由は何ですか?

 
すべてのダニを含むレポートを投稿する。このような大きな時間枠での粗いテスト方法では、完全に客観的な結果を得ることはできません。 ところで、このコードがどのような結果をもたらすかは非常に興味深いところです。なぜなら、オープニング関数のオープニング価格の 代わりにストップロスを設定しようとするからです))) ここは幼稚園です、お願いですから:))
 
lasso:

もしかしたら、条件を満たしていないかもしれません。例えばアルパリでは、金曜日に時値23のバーは存在しない。22を、コメントにあるように


StopLossの「Ask-StopLoss*Point」「Bid-StopLoss*Point」を削除したらテストが始まったのですが、これらでもテストするようにするにはどうしたらよいでしょうか?

       if ( Close[1]<= Open[24] && Close[23]<=Open[48] && Close[47]<=Open[72]) {    
        
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"Regulest",0,0,Green);}
         if(ticket < 0) {
            Print("Ошибка открытия ордера BUY #", GetLastError()); 
            Sleep(10000);  prevtime = Time[1];  return (0); }}
// SELL
if ( DayOfWeek()==5){//если сегодня вечер пятницы
if ( Hour() == 23)  {//если - 22 часа терминального времени
    if ( Close[1]>= Open[24] && Close[23]<=Open[48] && Close[47]<=Open[72]) {
    
         ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"Regulest",0,0,Red);
 
Techno:
すべてのダニを考慮したレポートを投稿してください。このような大きな時間枠での粗いテスト方法では、完全に客観的な結果を得ることはできません。ところで、このコードは非常に興味深いのですが、オープニング関数でオープニング価格の代わりにストップロスを設定しようとするため、まったく結果が出ません))) これは一種の幼稚園です、頼むから:))


StopLossをコンマ1つ分動かした、2年間やっていなかったことを思い出した、全てはテスト済みだ。ティックは必要なく、条件は非常にシンプルに「一昨日、昨日、今日」=「明日」、NNN=BUY、NNV=SELL、トレードが必要なものと一致することを確認します。30M期間のポジションを開くことができないため、予測精度は低く、約69%の取引が利益を上げています。手動ではより精度が高く、例えば327%の年間チャートは254の取引に基づいており、さらに72%の取引が利益を上げています。

Advisorの調整は 大変で、40の予測にはそれぞれSLとTphaPがあり、合計-700psの予測は未定義として置き換えただけだがテスターでは洗練されており、Block of Lot計算は預金の10%、136週で1070%は100から始めれば8422476%の利益となる。損失のリスクは比較的低く、1000%の固定マージンレベルで最大8回の連続負けは容易に許容されます。

テスターのポジションはすでに手動で複製することができますが、Expert Advisorが単独で取引するためには、レンタルサーバーに接続するのがよいでしょう。

私はコードを表示したり、あなたにEAを与えることはできませんので、あなたは、そのコードで取引を防止するために私を助けることはありません - それは金融危機やデフォルトを引き起こす可能性があり、心理的な武器であり、外国為替の開口部は無害であり、利益のためにのみ機能しますが、このパターンは科学のすべての支店でどこにでもあるされています。

同じ意味で、予測表を入手すれば、1週間で同じEAを作ることができます。

 

まず、主な誤りを訂正する。

条件内でポジションをクローズ するオプションがあります

  
        total=OrdersTotal();
if(total<1){  //если  нет открытых позиций

この論理はどこにあるのでしょうか?ポジションがないのに、どうしてクローズできるのですか?