MOEX.初心者のための質問集 - ページ 14

 
Sergey Savinkin:
REALで2日間、手動で1限でもいいから取引してみれば、多くの疑問が勝手に消えていく。
デモには、上記のような魅力はないのでしょうか?
 
Renat Akhtyamov:
デモでは、上記のような魅力は得られないのでしょうか?

デモにクリアはありません。必ずしも正しい担保が正しく表示されるとは限りません。正しいスタックかどうかは定かではありません。また、注文執行の 実質的なスピードも 推定することができます。1契約ではあまり損はしないでしょう。))))

 
Sergey Savinkin:

デモにクリアはありません。必ずしも正しい担保が正しく表示されるとは限りません。正しいスタックが利用可能かどうかは定かではありません。また、注文執行の実質的なスピードも推定することができます。1契約ではあまり損はしないでしょう。))))

クリアリングのこと?

まあ、デモでクリアがないのであれば、まだテストする方法がないのですが。

 
Renat Akhtyamov:

クリアリングのこと?

まあ、デモにないのであれば、まだテストする方法がわからないのですが......。

なぜテストにクリアが必要なのか?すべてがリアルタイムにカウントされます。クリアは、何も問題がないことを確認するのみです。
 
Yuriy Asaulenko:
なぜテストにクリアが必要なのか?すべてリアルタイムでカウントされます。クリアは、何も問題がないことを確認するのみです。

私はあなたを許します ;)

できるだけ実際の取引に近い状態でストラテジーをテストしたい。

要は、リアルに「プレゼント」がないってことです。

 
Renat Akhtyamov:

私はあなたを許します ;)

できるだけ実際の取引に近い条件でストラテジーをテストしたい。

要は、リアルに「プレゼント」がないってことです。

リアルには必ずプレゼントがある。

 
Alexey Kozitsyn:

現実の世界には必ずギフトがある。

予想外の損失ということですか?
 
Renat Akhtyamov:
想定外の損失ということでしょうか?

たいていの場合、そう、損をしている。しかし、いつもそうとは限りません。個人的には、ブローカーの手数料がどのように請求されるのか、いつも理解できない。ある取引スタイルでは、売買取引の 頻度に応じて手数料を徴収する場合があります。確かにベット相場を見ずに+大きなロットでエントリーすると損するかもしれませんね。一般的に、テスター/デモから本番に切り替えると必ずクセが出ます。そして、プレゼントは必ずあります。

 
私はフォートのMT5で取引しており、自分の口座に***監視を追加しましたが、私は***が取引の結果を正しく計算しないという事実に直面しました。特に、ポジションがクリアリングを通じて転送された場合、すなわち、お金で正しく利益/損失を計算しないかもしれない、または監視の統計からいくつかの取引が存在しません。もしかしたら、どなたかお困りの方がいらっしゃるかもしれませんね。
 
Вадим Мотеюнас:
私はフォートのMT5で取引しており、自分の口座に***監視を追加しましたが、私は***が取引の結果を正しく計算しないという事実に直面しました。特に、ポジションがクリアリングを通じて転送された場合、すなわち、お金の利益/損失を正しく計算しないかもしれない、または監視の統計からいくつかの取引が存在しません。もしかしたら、どなたかお困りの方がいらっしゃるかもしれませんね。
//+------------------------------------------------------------------+
//| Expert Get position price function                               |
//+------------------------------------------------------------------+
double GetPositionPrice( const string aSymbol )
{
  double price_in = 0;
  double volume_in = 0;
  double price_out = 0;
  double volume_out = 0;
  double price = 0;
  double volume = 0;
//---  
  ulong pos_id = ulong( PositionGetInteger( POSITION_IDENTIFIER ) );
    
  if ( pos_id > 0 )
  {
      if ( HistorySelectByPosition( pos_id ) )
      {
        int deals = HistoryDealsTotal();
      
        for( int i = 0; i < deals; i++ )
        {
          ulong deal_ticket = HistoryDealGetTicket( i );
          ulong order_ticket = ulong( HistoryDealGetInteger( deal_ticket, DEAL_ORDER ) );
        
          if ( order_ticket > 0 )
          {
            ENUM_DEAL_ENTRY deal_entry = ENUM_DEAL_ENTRY( HistoryDealGetInteger( deal_ticket, DEAL_ENTRY ) );
              
            if ( deal_entry == DEAL_ENTRY_IN )
            {
              price = HistoryDealGetDouble( deal_ticket, DEAL_PRICE );
              volume = HistoryDealGetDouble( deal_ticket, DEAL_VOLUME );
                                
              price_in += price * volume;
              volume_in += volume;  
            }
            else
            if ( deal_entry == DEAL_ENTRY_OUT )
            {
              price = HistoryDealGetDouble( deal_ticket, DEAL_PRICE );
              volume = HistoryDealGetDouble( deal_ticket, DEAL_VOLUME );
                                
              price_out += price * volume;
              volume_out += volume;  
            }
          }
        }
//---  
        price = price_in - price_out;
        volume = volume_in - volume_out;
//---
        if ( volume > 0 )
        {       
          return( NormalizeDouble( price / volume, _Digits ) );
        }
      }
      else
      {
        Print( "GetPositionPrice: Невозможно получить историю позиции по символу ", aSymbol );
      }
    }
    else
    {
      Print( "GetPositionPrice: Невозможно определить идентификатор позиции по символу ", aSymbol );
    }
  return( 0 );
}