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

 
Nauris Zukas:

変更しないと、MQl5のヘルプが 開きません。

高速なインターネット接続環境はありますか?ヘルプが開かない場合は、ダウンロード中であることを意味します。以前はログブックにアップロード作業に関するメッセージが表示されていましたが、現在はメッセージが削除されています。

 

教えてください!!!

iCustomでインジケータ名の後に何を書けばいいのか?

 
TaywinLannister:

教えてください!!!

iCustomでインジケータ名の後に何を書けばいいのですか?

コードでサンプルを検索:iCustom

 
TaywinLannister:

教えてください!!!

iCustomでインジケータ名の後に何を書けばいいのか?

ホームページのヘルプ です。
Документация по MQL5: Технические индикаторы / iCustom
Документация по MQL5: Технические индикаторы / iCustom
  • www.mql5.com
[in] input-параметры пользовательского индикатора, разделенные запятыми. Тип и порядок следования параметров должен соответствовать. Если параметры не указаны, то будут использованы значения по умолчанию. INVALID_HANDLE. Для освобождения памяти компьютера от неиспользуемого больше индикатора служит функция IndicatorRelease(), которой...
 
foreXteller:

ウラジーミル・カルプトフ さんへ

リンクありがとうございます。

メタトレーダー5端子試験におけるTICK GENERATION ALGORITHM」を拝見させていただきました。

ちょっと違いますね。分単位でティック値を分析したいわけではないし SymbolInfoTick()からの最後のマーケット値も 今はそれほど重要ではありません。

今後、MetaTrader 5で 遊ぶ ために、 私のプログラムを使って、複数の通貨の1分 相場を同時に、 ASKBIDVOLUMEを 考慮して、 私の戦略(私のロボット)をテストしたい のです。 SPREADの ように、ローソク足ではありません

プログラムは VISUAL Cで書かれているので テストにMTは 使えません。

プログラムはかなり複雑で、 MQLに翻訳することはほとんど できません (将来 的にはDLL ファイルを使用する予定 です

ご清聴ありがとうございました。

ウラジーミル・カルプトフ さんへ



ご推薦いただいた記事は、以下の通りです。

「チック生成アルゴリズム

「MetaTrader5ターミナルのストラテジーテスターは、テストにおいて1つの価格シミュレーションモードのみを使用しています。

既存の分単位のヒストリカルデータ」の入手先を教えてください。

ありがとうございました!!!


 

ポジションのクローズ イベントをキャッチする方法を教えてください。

void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   ...
  }
 
void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   if(trans.deal_type!=DEAL_TYPE_BUY && trans.deal_type!=DEAL_TYPE_SELL)
      return;
   ENUM_DEAL_ENTRY entry_type=(ENUM_DEAL_ENTRY)HistoryDealGetInteger(trans.deal,DEAL_ENTRY);
   if(entry_type==DEAL_ENTRY_IN)
      return;
  }

これでよいのでしょうか?ボリュームチェックも追加した方がいいと思います。

 
foreXteller:

ウラジーミル・カルプトフ さんへ



お勧めの記事には、次のようなことが書かれています。

「チック生成アルゴリズム

MetaTrader 5ターミナルのストラテジーテスターは、テストにおいて1つの価格シミュレーションモードのみを使用します。使用するシンボルの1分足タイムフレームの既存のヒストリ データに基づき、ティックを生成します。

既存の分単位のヒストリカルデータ」の入手先を教えてください。

ありがとうございました!!!


すべてはMetaTrader 5にすでに備わっているのです。最初からすぐにでも。取引サーバーに接続すると、すぐにすべてのティック履歴にアクセスすることができます。

オンラインで仕事をする場合、当然ながら本物のダニと一緒に仕事をすることになります。ストラテジーテスターでは、最も正確な方法である「Every tick is based on real ticks」と、ティック生成モード「All ticks」、「OHLC」のいずれかを選択することができます。

 

履歴のポジションの利益を得ることができる普遍的なコードがあれば教えてください。少なくともpos_idで。これは、すべての市場で通用するものです。

 
Juer:

ポジションのクローズ イベントをキャッチする方法を教えてください。

FXの場合は、このオプションを使います。

/*********************TradeTransaction function**********************/
void OnTradeTransaction(const MqlTradeTransaction& trans,
                        const MqlTradeRequest& request,
                        const MqlTradeResult& result)
{
  if(trans.type == TRADE_TRANSACTION_DEAL_ADD && trans.symbol == _Symbol)
   {
    /******************** Если открылась позиция********************/
    if(PositionSelectByTicket(trans.position) && PositionGetInteger(POSITION_MAGIC) == magick)
      ifOpenedPosition(trans);
    /******************** Если закрылась позиция********************/
    if(!PositionSelectByTicket(trans.position))
     ifClosedPosition(trans);
   }
}/*******************************************************************/

つまり、そのポジションが存在するかどうかです。

Juer:

ヒストリーのポジションの利益を得ることができるユニバーサルコードはありますか?少なくともpos_idで。すべてのマーケットで通用する

1本書くのは「楽勝」です。ポジションに属する取引を選択し、それらをループさせて利益、スワップ、手数料を加算するだけです。
理由: