どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 757

 
Ozero:
注文が成立しないという意味です :( 言い方が悪かったらすみません、まだ初心者です。

かなり効いていますね。

//+------------------------------------------------------------------+
//|                                                        Ozero.mq4 |
//|                                            Copyright 2014, Vinin |
//|                                             http://vinin.ucoz.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, Vinin"
#property link      "http://vinin.ucoz.ru"
#property version   "1.00"
#property strict
// -------- переменные --- Н -----
extern double gLot=0.1;            // размер лота для покупки 
extern double gPoint=0.001;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
// -------- переменные --- К ----- 
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {

// Открытие позиции
   if(OrdersTotal()==0)
     {
      Print(" Открытие первой позиции ");
      double _Ask=MarketInfo("GBPUSD",MODE_ASK);
      int ticket=OrderSend("GBPUSD",OP_BUY,gLot,_Ask,15,0,0);
      if(ticket>0)
        {
         Print(" ОРДЕР ОТКРЫТ ",ticket);
        }
     }

   double _Bid=MarketInfo("GBPUSD",MODE_BID); //для цены
   for(int pos=OrdersTotal()-1;pos>=0;pos--)
     {
      if(OrderSelect(pos,SELECT_BY_POS))
        {
         if(OrderOpenPrice()+gPoint<_Bid)
           {
            OrderClose(OrderTicket(),OrderLots(),_Bid,15);
           }
        }
     }
   return(0);
  }
//+------------------------------------------------------------------+
ファイル:
ozero.mq4  2 kb
 
Vinin:

かなり効いていますね。

Vininさん、こんにちは。

あなたのコードを解析しました。私の問題を見事に解決してくれた。それにしても、私のコードはうまくいったのでしょうか?それとも、"It works "は、あなたのプログラムのバージョンを指しているのでしょうか?

MQLという言語を理解することが重要なのです。


バージョンについて質問です。なぜ、プログラムの最初に_Bidと_Askの変数を宣言しないのですか?mql4では許されるのでしょうか?


オゼロ。

 
Vinin:

かなり効いていますね。

ファンタスティック!あなたのプログラムは機能しています。でも、どうして私のはそうならないんだろう?
 
Ozero:
ファンタスティック!あなたのプログラムは機能しています。でも、どうして私のはそうならないんだろう?

前編はここと比べると?

           if (AktualBid>=AktualAsk+0.010 && PozOtk1==false)

アドバイス通り、2つ目の値を取得するようにコードを修正した場合。

                   AktualAsk=MarketInfo( "GBPUSD",MODE_ASK);

は、しなかったんですね。

      AktualBid=NormalizeDouble(Bid,Digits); //для цены

そして、Vininは それを修正した。

   double _Bid=MarketInfo("GBPUSD",MODE_BID); //для цены

それだけが素晴らしいことなのでしょう。でも、確かなことは分からないので、自分で調べてみてください。

 
こんにちは、インジケータを理解するのを助けてください、私は値 "式0 "と同様に値 "式1 "を計算するために使用されている式を知りたいです
ファイル:
 
zigga85:
このインジケーターを理解するために、"Formula 0 "の値と "Formula 1 "の値を計算するためにどのような数式が使用されているかを知りたいのです。
(高値+安値+終値)/3、(高値+安値+2*終値)/4
 
Vinin:

かなり効いていますね。

司会者のVininさんへ!!!!

以前から、真摯な返信にお礼を申し上げたいと思っていました。その中の一人が、昔、私がリアルトレードに移行する際にお世話になった方です。自分で書いたアルゴリズムではなく、正しいオーダークロージングアルゴリズムをアドバイスしていただきました。私は今でもあなたのを使っています。

このスレッドのアドバイスはとても親切で助かります。

あらためて、ありがとうございました

 
Vinin:

かなり効いていますね。

おやすみなさい。


エラー0件、警告1件:「OrderClose」の戻り値を確認する必要があります 46 13はOrderClose(OrderTicket(),OrderLots(),_Bid,15)の行です。


オゼロ。

 
Ozero:

おやすみなさい。


エラー0件、警告1件:「OrderClose」の戻り値を確認する必要があります 46 13はOrderClose(OrderTicket(),OrderLots(),_Bid,15)の行です。


オゼロ。


ResetLastError();
if(!OrderClose(OrderTicket(),OrderLots(),_Bid,15);) Print("Чё-та не закрылася позиция. Фигня вот такая происходит: "+GetLastError());
 
artmedia70:

ブラケットの後ろに「;」をつける。

プログラムは動作しますが、時々エラー4108で失敗します。


オゼロ。