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

 
evillive:

私の理解が正しければ、ポジションをクローズした後、次の30ティックごとにではなく、30ティック後に1枚写真が必要なのですね?

それならば、時間別に撮影した方が楽なのでは?例えば、注文終了時刻から30秒後とか?

写真は30ティック後に1枚必要です。チャートはティックになるので、30ティックになります。しかし、いずれにせよ、配列で作業すべきです。 もし、他の注文が30秒以内に決済されれば、他の注文からも30秒をカウントしなければなりません。
 
JuliettaRu:
こんにちは、私の質問(私が最初に質問したのではないと仮定して)についての説明がどこにあるか、そしてどうすればよいか、ご指導ください。スマートフォンにMT4をインストールしていますが、20分遅れで表示されるチャートをPCのMT4の表示と比較しています。
それは聖杯 だ!
 

これを理解するのを助けてください。このコードの一部を修正する方法がわからないのですが...。というか、何を入れれば悪臭がしないのでしょうか?

OrderModifyの返り値をチェックする必要があります。

         }    
         if (OrderOpenPrice()-Ask > Korts*Point*Multi)
         {
           if (OrderStopLoss() > Ask +(Korts)*Point*Multi) 
           {
              OrderModify(OrderTicket(),OrderOpenPrice(),Ask + (TrSt)*Point*Multi,'1', 0, Red);
           }
         }            
      }
   }   
   return(0);
 
Guaro:

これを理解するのを助けてください。このコードの一部を修正する方法がわからないのですが...。というか、何を入れれば悪臭がしないのでしょうか?

OrderModifyの返り値をチェックする必要があります。

OrderModify()関数の戻り値は、関数がチェックできるように変数に代入する必要があります。あるいは、ただ

if(OrderModify(OrderTicket(),OrderOpenPrice(),Ask + (TrSt)*Point*Multi,'1', 0, Red))
Print("Ордер модифицирован успешно.");
 

コンパイルエラーを修正するヘルプ: Magic - 未宣言の識別子

bool CheckExists(int Type)
{
bool Result = True;
for(int i = 0; i < OrdersTotal(); i++)
if(OrderSelect(i, SELECT_BY_POS))
if(OrderType() == Type && OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
。if(OrderOpenTime() >= Time[0])
Result = False;
for(i = 0; i < OrdersHistoryTotal(); i++)
。{
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
if(OrderType() == Type &)&& OrderOpenTime() >= Time[0]
&& OrderMagicNumber() == Magic && ...OrderSymbol() == Symbol()
Result = False;
}

return(Result);
}.

 
Abdus_Ali:

コンパイルエラーを修正するヘルプ: Magic - 未宣言の識別子

グローバル変数とユーザー変数は、コードの最初に宣言する必要があり、この場合はユーザー変数なので、このように書きます。

入力 int Magic = 1;

 
ticket2=OrderSend(Symbol(),OP_SELL, lot1, Price2, 20, SL2, TP2, NULL, 2,0, clrGreen)を実行。
if (Bid>=TP1) // 1(1/0)
{

OrderModify(ticket2,???? , SL2, Price2, 0, clrNONE)です。

こんばんは、ticket2の注文を変更する方法を教えてください。の代わりにどんな値段をつければいいんだ?それとも、この注文を最初に選択しないと修正できないのでしょうか?実際には、OrderModify(ticket2,......)のパラメータに記述して、すでに選択しているのですが。

 
bobrush:
ticket2=OrderSend( Symbol(),OP_SELL, lot1, Price2, 20, SL2, TP2, NULL, 2,0, clrGreen)を実行。
if (Bid>=TP1) // 1(1/0)
{

OrderModify(ticket2,???? , SL2, Price2, 0, clrNONE)です。

こんばんは、ticket2の注文を変更する方法を教えてください。の代わりにどんな値段をつければいいんだ?それとも、この注文を最初に選択しないと修正できないのでしょうか?実際には、OrderModify(ticket2,......)のパラメータに記述して、すでに選択しているのですが。

Put OrderOpenPrice()
 
ループの中でサーチとクローズのポジション が止まるのが理解できません。すでにループを逆にしてポジションの数を増やしましたが、テスターではまだポジションをスキップ(離脱)しています。どこがどうおかしいのか、わかる方教えてください。
int positions=PositionsTotal();
       for(int x1=-1;x1<positions;x1++) 
          {
           ulong pos_tiket11=PositionGetTicket(x1);
           if(PositionSelectByTicket(pos_tiket11))
             {
              string comment11=PositionGetString(POSITION_COMMENT);
              Print("ПОЗИЦИЯ ТИКЕТ + "+(string)pos_tiket11+" "+comment11+" ТИП "+(string)PositionGetInteger(POSITION_TYPE));
              if(pos_tiket11!=TIKET11) 
                {
                 ENUM_POSITION_TYPE type11=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
                 if(type11==POSITION_TYPE_BUY)
                   {
                    Print("ПОЗИЦИЯ ВЫБРАНА КОМЕНТ = "+comment11);
                    mytrade111.PositionClose(pos_tiket11,15);
                    TIKKET=0;    
                    dolivka_P1=1;
                   } 
                }
             }
          }
 
ara66676:
ポジションサーチとクロージングがループの中で止まってしまうのが理解できません。すでにループを逆にしてポジションの数を増やしましたが、テスターではまだポジションをスキップ(離脱)しています。

mql4のフォーラムで質問されているので、コードもmql4にあると思われます。それとも、間違っているのでしょうか?

mql4ではポジションはなく、注文のみです。