初心者の方からの質問 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分 足 相場を同時に、 ASK、 BID、 VOLUMEを 考慮して、 私の戦略(私のロボット)をテストしたい のです。 や 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本書くのは「楽勝」です。ポジションに属する取引を選択し、それらをループさせて利益、スワップ、手数料を加算するだけです。