初心者の方からの質問 MQL4 MT4 MetaTrader 4 - ページ 88

 
Gregory Kovalenko:

こんにちは。現在の未決済注文の損益を知るにはどうすればよいですか?

トライアル

- プラス(利益)のみ表示し、現時点で赤字の場合は、損失は表示されません。

追伸:注文履歴OrderProfit()でもマイナスが表示されて います。

どのように利益を得ようとしているのか、すべてのコードを表示する
 

現在の注文の利益について(投稿の発起人は見つかりませんでしたが)

double profit=OrderProfit()+OrderSwap()+OrderCommission();
 
Renat Akhtyamov:

現在の注文の利益について(投稿の発起人は見つかりませんでしたが)


ありがとうございます。確かにコードのロジックに間違いがありました、そのため
double profit=OrderProfit()+OrderSwap()+OrderCommission();

は機能しませんでした。

今、興味深い問題が生じている。

履歴の最後の注文を見ると、赤字になっているんです。tpを減らし、lotを増やしたい。

MarketInfo(Symbol(),MODE_STOPLEVEL)

どのように私は、オープンと新しいTPに現在の価格を 知って、必要なロットを計算するのですか - 損を閉じるには?

 
Gregory Kovalenko:

ありがとうございます。確かにコードのロジックに間違いがありました。

は機能しませんでした。

さて、ここで興味深い問題があります。

履歴の最後の注文を見てみると、赤字になっている。tpを減らしてlotを増やしたい。tp - どのlotが必要かの計算方法。

どのように私は、オープンと新しいTPに現在の価格を 知って、必要なロットを計算するのですか - 損失を閉じるには?

この質問は面白いのですが、戦略策定と関係があります。個人的には、パスです。
 
Gregory Kovalenko: どのロットが必要かを計算する方法、開くために現在の価格と 新しいTPを知る - 損を閉じるには?

OrderLots() と等しいロットの注文によって、損失がどの程度カバーされるかを計算します。OrderLots()を取得した値で割ったロットで注文を出します。

つまり、OrderLots()で0.5の損切りをした場合、ロット OrderLots()/0.5 = OrderLots()*2 で注文を建てるということです。

OrderLots()で2回損切りした場合は、OrderLots()/2 を使用します。

 
LRA:

OrderLots() と等しいロットの注文によって、損失がどの程度カバーされるかを計算します。OrderLots()を取得した値で割ったロットで注文を出します。

ロット=1の注文でどれだけの損失をカバーできるかを計算するのが簡単です。ロット=1の注文を、結果の値で割って開く。
 

4重の質問があります。

チャート 設定で3000pipsに制限している人、バーチカルスケーリングが全く効いていない人、いませんか?

スクリーンショットをご覧ください。sjfhakslljas


 

"ルーピングプログラム "の応用

長所と短所を説明してください。start()から新しいティックを待つよりも良いのでしょうか?新しいティックへの応答速度が向上するのか?

start()
   {
   while(!IsStopped())
      {
      RefreshRates();
      //...
      Sleep(5);
      }
   return;
   }

 
smart_man:

"ルーピングプログラム "の応用

長所と短所を説明してください。start()から新しいティックを待つよりも良いのでしょうか?新しいティックへの応答速度が向上するのか?

start()
   {
   while(!IsStopped())
      {
      RefreshRates();
      //...
      Sleep(5);
      }
   return;
   }

やめておいたほうがいい。リソースを大量に消費することになる。また、ループさせずに応答速度が速いのは、何が問題なのでしょうか?
 
smart_man 長所と短所を説明する。start()から新しいティックを待つよりも良いのでしょうか?新しいティックへの反応速度が上がるのか?

   while(!IsStopped())
      {
      RefreshRates();
      //...
      Sleep(5);
      }

ティックとは、サーバーから送られてくる新しいデータのことです。そして、到着後すぐに処理する必要があります。5msの遅延でループさせると、ほとんどのtickはこの遅延の間に到着することになります。従って、処理は0 ......だけ遅れます。5msです。