[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 278

 
waitra >> :

まさに必要なもの!

このコードをこのグリッドに正しく挿入する方法を教えてください。

(直接入れると、テスターが最初のポジションのオープニングで止まってしまうだけです)

ちょっと躊躇してしまいますね。うまくいくかどうかもわからない。

//-----------------------------------------
//Открытие позиции:



bool Open_Buy() {

//------------------------------

for (int v=0; v<OrdersTotal(); v++)                             {       
      if (OrderSelect( v, SELECT_BY_POS, MODE_HISTORY))               {           
        if (OrderSymbol()==Symbol() && OrderMagicNumber()== Magic)     
                                 условие_2 = true ; 
         if (OrderSymbol()==Symbol() && OrderMagicNumber()!= Magic)     
                                 условие_2 = false; 
                                    }
                                 }
//--------------------------------------------------------------


   bool res=false; 

if( условие_1)      {

            if ( условие_2 == false)    {

                    res=true;     }}

else    {

    if( условие_1)       { 

   if ( условие_2 == true  )       { 

   res=true;     }}}

return( res);

 
いいえ、これはうまくいきません。condition_2 は別の方法で指定する必要があります。
 

皆さん!スクリプトで何を書き間違えたのか......?

int start()

{

//----------------------------------

int i,counted_bars=IndicatorCounted();

i=Bars-counted_bars-1です。

for(i=0; i<Bars; i++)

double a = Open[i]-Close[i];

//----------------------------------

if ( a > 0 )

{

アラート(「candle is BAD」)。

}

さもなくば

//----------------------------------

if ( a < 0 )

{

アラート(「ローソク足がBULLになった」)。

}

//----

return(0)です。

}

//+---------------------------------

課題は、Bar#1がBullかBearかを判断し、メッセージを出力することでした。同時に、後続のBarのメッセージを定義して出力します。あまりシビアに判断しないでください)))

 

以下すべて

"

double a = Open[i]-Close[i];

//----------------------------------

"

は、i が Bars-1 に等しい場合に一度だけカウントされる。


for-cycleの代わりに、最初のバーの計算が必要なので、double a = Open[1]-Close[1]; と記述します。

int start()//+----------------------------

{  double a = Open[1]-Close[1];

   if ( a > 0 ) Alert ("свеча МЕДВЕЖЬЯ");

   if ( a < 0 ) Alert ("свеча БЫЧЬЯ");

return(0);
}//+--------------------------------------
 
Urain >> :

以下すべて

"

double a = Open[i]-Close[i];

//----------------------------------

"

は、i が Bars-1 に等しい場合に一度だけカウントされる。


最初のバーの計算が必要な場合は、for-cycle の代わりに double a = Open[1]-Close[1]; と記述してください。

すでにこの方法で試しています。メッセージはなぜかTICごとに出力される?

 
Urain >> :

以下すべて

"

double a = Open[i]-Close[i];

//----------------------------------

"

は、i が Bars-1 に等しい場合に一度だけカウントされる。


for-cycleの代わりに、最初のバーの計算が必要なので、double a = Open[1]-Close[1]; と記述します。

ありがとうございました。しかし、なぜ今、形成されたローソク足1本ごとではなく、1回だけメッセージを表示するのでしょうか?

 
chaynik_1 >> :

ありがとうございました。しかし、なぜ、形成されたローソク足1本ごとではなく、1回だけ出力されるようになったのでしょうか?

だからあなたは、スクリプトを持っていると述べたが、すべてのティックで印刷される指標を作るが、コメントでperepeshiteアラートとアラートを取得したり、すべてのティックを置く上のトリガーから保護するために、すべてのティックの疲れる。

 
Urain >> :

だから、あなたはスクリプトを持っていると言った、すべてのティックで印刷されますが、コメントでアラートを移動し、アラートを取得したり、すべてのティックでトリガから保護するためにすべてのティックにうんざりしているインディケータを作る。



すべて解決した、うまくいった今回もありがとうございましたニコラスさん、Skypeについて質問です。

 
chaynik_1 >> :

やった!うまくいったぞ改めてありがとうございます!!!ニコライ、Skypeで質問していい?

スカイプやプライベートでメールしてください。

 
rid писал(а)>>
いいえ、それはうまくいきません。他の方法でcondition_2を設定する必要があります。

単純に「EAの履歴にまだ注文がない」ことを検出する機能はないでしょうか?- 其れでも良い