[アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. - ページ 459

 
Maximov7:

ここでもうひとつ質問です・・・。私はこのようなオープンオーダーを持っています。

OrderSend("EURUSD",OP_BUY,0.1,C1,10,Bid-0.0017-0.0017,Ask+0.0017);

この注文がtakeprofitで終了した場合、別の注文を出すにはどうしたらいいでしょうか?


読まれましたか?(なあなあ)
 
3回ほど読み直し......それでも?
 
Maximov7:
読みました......3回目ですが、まだ?


クローズした注文の履歴のループで、「この」注文を見つけ、TPでクローズしたかどうかをチェックし、もしそうなら、「違う」注文をオープンします。以上です。

詳しくはこちらを ご覧ください。必要な周波数を選択し、ソフトウェアに接続するだけで完了です。

 
ありがとうございました。
 
Maximov7:
ありがとうございました。

お楽しみください。
 

こんばんは!(^o^)

コードをご覧ください。

for(i=1;i<=OrdersTotal();i++) // トロールの注文を取得する。

{

if(OrderSelect(i-1,SELECT_BY_POS)==true)

{

if (OrderSymbol()!=Instr)

を続ける。

if(OrderType()==0)とする。

{

if ((Bid-(OrderOpenPrice()+TralingStop*Point))>0)の場合。

return(55);}。

if(OrderType()==1)とする。

{

if ((アスク-(注文開始価格()-トレリングストップ*ポイント))<0)

リターン(55)です。

}

}

何が問題なのか理解できません。Alertの内部でテストしていますが、Instrの後、他の場所では動作しません。

 
demlin:

こんばんは!(^o^)

コードをご覧ください。

for(i=1;i<=OrdersTotal();i++) // トロールの注文を取得する。

{

if (OrderSelect(i-1,SELECT_BY_POS)==true)

{

if (OrderSymbol()!=Instr)

を続ける。

if(OrderType()==0)とする。

{

if ((Bid-(OrderOpenPrice()+TralingStop*Point))>0)の場合。

return(55);}。

if(OrderType()==1)とする。

{

if ((アスク-(注文開始価格()-トレリングストップ*ポイント))<0)

リターン(55)です。

}

}

何が問題なのか理解できません。Alertの内部でテストしていますが、Instrの後、他の場所では動作しません。


コードの上にこのような行がありませんか?
string Instr;
コードを正しく挿入する - エディタでSRCを経由して...:-)))
 
Roman.:

コードの上にこのような行がありませんか? コードを正しく挿入する - エディタでSRCを経由して...:-)))
インストルメントがそうだ、SRCが何かは知らないが
 
demlin:
インストルメントがそうだ、SRCが何かは知らないが

あなたの投稿プレスCTRL + ALT + Mにコードを貼り付ける と - その後、そこにコードを置く(バッファCTRL + C - コピー、CTRL + V - 貼付)、次にウィンドウの下部にある "貼り付け "ボタンをクリックします。
 
demlin:

こんばんは!(^o^)

コードをご覧ください。

for(i=1;i<=OrdersTotal();i++) // トロールの注文を取得する。

{

if (OrderSelect(i-1,SELECT_BY_POS)==true)

{

if (OrderSymbol()!=Instr)

を続ける。

if(OrderType()==0)とする。

{

if ((Bid-(OrderOpenPrice()+TralingStop*Point))>0)の場合。

return(55);}。

if(OrderType()==1)とする。

{

if ((アスク-(注文開始価格()-トレリングストップ*ポイント))<0)

リターン(55)です。

}

}

何が問題なのか理解できません。Alertの内部でテストしていますが、Instrの後、他の場所では動作しません。


このオプションは、私が同じようなデザインを整理している方法です。


// ------------------------------------------------Ищем наш ордер---------------------------------

int orderType;
   for (int orderIndex = (OrdersTotal() - 1); orderIndex >= 0; orderIndex--)
   {
      if (!OrderSelect(orderIndex, SELECT_BY_POS))
      {
         continue;
      }

      if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber))
      {
         continue;
      }

      orderType = OrderType();
      if ((orderType != OP_BUY) && (orderType != OP_SELL))
      {
         continue;
      }
          ticket = OrderTicket( );                         // Номер ордера
          orderLots = OrderLots();                         // Lots   
          orderProfit = OrderProfit() + OrderSwap();       // Profit
          Price = OrderOpenPrice();                        // Цена открытия рыночного ордера
          SL =  OrderStopLoss();                           // Значение StopLoss ордера
          TP = OrderTakeProfit();                          // Значение TakeProfit ордера
          
             if (ticket>0)                                               // Если позиция открылась
                    {
                             while(OrderSelect(ticket,SELECT_BY_TICKET)==false)       // Если ордер выбран
                                 {
                                   Sleep(100);
                                 }
                                  double OpenPrice=OrderOpenPrice();
                                      
                                  
                    
                                if (orderType == OP_BUY) 
                                     {
                                       //здесь трал покупки
                                     }
            
                                if (orderType == OP_SELL) 
                                      {
                                        //здесь трал продажи
                                      }   
                            
                    }
        
   }