初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 847

 
Vitaly Muzichenko:

例えば、グラフィックを表示する端末はWebサーバーにマークアップを送信し、他の端末はそれを受信してチャートに表示するようにしたい場合です。簡単なことではないが、できることである

どうすればいいのか、何を読めばいいのか、その方法を教えてください。マークアップは自動的に送信され、他のユーザーも受け入れるのか、それとも毎回テンプレートとしてアップロードする必要があるのか?
 
Илья:
どうすればいいのか、何を読めばいいのか。マークアップは自動的に送信され、他のユーザーが受け入れるのか、それともテンプレートとしてその都度個別にアップロードする必要があるのでしょうか?

小さなボタンが必要で、マーキングをした後、それを押して送信するのがいいと思います。受信機でも同じで、マークアップを取得したい場合は、2つ目のボタンを押します。グラフ上に 合計2つのボタンが あり、常時監視するためのリソースコストがかからない

 

指値注文を有効にした後、常に1つのポジションが市場にある場合、どのように注文を出すことを制限すればよいですか?

FXでは、注文数-ポジション数を確認するのが常でした。

if( CalculateBUYPositions()==1)
//// 
 int CalculateBUYPositions()
  {
   int total=0;
//ENUM_ORDER_TYPE   order_type=ORDER_TYPE_BUY;
   for(int i=PositionsTotal()-1;i>=0;i--)
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic)
                   if(m_position.PositionType()==POSITION_TYPE_BUY)
                  
              {
            total++;
            }
//---
   return(total);
  }
  //

ポジションが1つしかない場合は、指値注文を設定する必要があります。

この状態を置き換えるにはどうしたらいいのでしょうか?

 
lil_lil:

指値注文を有効にした後、常に1つのポジションが市場にある場合、どのように注文を出すことを制限すればよいですか?

FXでは、注文数-ポジション数を確認するのが常でした。

ポジションが1つしかない場合は、指値注文を設定する必要があります。

この状態をどのように置き換えたらいいのか。

質問が明確でない。命令とポジションを混同している。

引用されたコード「CalculateBUYPositions()」は、BUYポジションの数を計算するものです。


質問を言い換えてください。

 
Vladimir Karputov:

質問が明確でない。命令とポジションを混同している。

引用されたコード「CalculateBUYPositions()」は、BUY POINTSの数を計算するものです。


質問を言い直してください。

FXの場合、1つのポジションで指値注文をすると、指値注文が有効になり、ポジション 数が増えてもEAがLimitを増やさないのですが、どうしたらいいですか?

FXでは、1ポジションの制限があり、すべての指値注文が有効になると、ポジション数が増え、それ以上指値注文ができなくなります。もしポジションが1つなら "CalculateBUYPositions()==1 "という条件と同じ代替案が必要です。

 
lil_lil:

FXでは、ポジションが1つあれば指値注文をし、ポジション 数が増えても指値注文が有効になり、EAで指値注文をすることはない。

FXでは、ポジションが1つの場合、指値注文が有効になり、ポジション数が増えるとEAから指値注文が出なくなります。もしポジションが1つなら "CalculateBUYPositions()==1 "という条件と同じ代替案が必要です。

いいえ、そんなことはありません。はっきり言って、現在のシンボルにはすでに1つのポジションがあります。

  • ヘッジ口座では、一旦保留注文がトリガーされると、ONE MOREポジションが発生します。
  • ネッティングアカウントで、保留中の注文のトリガーが発生した後
    • もし、保留中の注文が現在のシンボルに対するものであった場合。
      • 既存のポジションが増加する
      • 既存のポジションが減少する
      • 既存のポジションはロールオーバーされます。
      • 形勢逆転


ご質問を明確にするために、どのようなアカウントタイプをお探しなのか、そして何を追跡する必要があるのかをご説明します。

 
lil_lil:

指値注文を有効にした後、常に1つのポジションが市場にある場合、どのように注文を出すことを制限すればよいですか?

FXでは、注文数-ポジション数を確認するのが常でした。

ポジションが1つしかない場合は、指値注文を設定する必要があります。

この状態をどうすれば変えられるのか。

これは、ポジションの開始と変更に関与する取引数または注文数によって決定することができます。ポジションのチケットの履歴を選択し、番号を確認するだけです。ポジションが数量を追加した後、反対指値注文などで部分的に決済されたというバリエーションがある場合、取引をループしてDEAL_ENTRY_INおよび/またはその他の タイプとして取引のタイプをカウントする必要があります。

Документация по MQL5: Торговые функции / HistorySelectByPosition
Документация по MQL5: Торговые функции / HistorySelectByPosition
  • www.mql5.com
Не следует путать между собой ордера из торговой истории и действующие отложенные ордера, которые отображаются на вкладке "Торговля" в панели "Инструменты". Список ордеров, которые были отменены или привели к проведению торговой операции, можно посмотреть  в закладке "История" на панели "Инструменты" клиентского терминала. Функция...
 
ありがとうございます。私はポジションのロットと開始ロットを比較し、それらが等しくない場合、私は終了します。
 

MT4からMT5へロボットをリメイクして2日目。保留中の注文を設定 できるようにした。MqlTradeRequestに関するヘルプです。

   else if(orderType==ORDER_TYPE_BUY_STOP)
     {
      request.type =ORDER_TYPE_BUY_STOP;                                // тип ордера
      price        =SymbolInfoDouble(Symbol(),SYMBOL_ASK)+offset*point; // цена для открытия 
      request.price=NormalizeDouble(price,digits);                      // нормализованная цена открытия 
     }
   else if(orderType==ORDER_TYPE_SELL_STOP)
     {
      request.type     =ORDER_TYPE_SELL_STOP;                           // тип ордера
      price=SymbolInfoDouble(Symbol(),SYMBOL_ASK)-offset*point;         // цена для открытия 
      request.price    =NormalizeDouble(price,digits);                  // нормализованная цена открытия 
     }

どちらの場合も、Ask - エラーのようです。2番目のケースでSELL_STOPを使用する場合は、Bidを使用する方が良いでしょう。

 
STARIJ:

MT4からMT5へロボットをリメイクして2日目。保留中の注文を設定 できるようにした。MqlTradeRequestに関するヘルプです。

どちらの場合も、Ask - エラーのようです。2番目のケースでは、BidはSELL_STOPの方がよいでしょう。


売りはBIDで始まり、ASKで終わります。

理由: