MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1382

 
Boris:

それで...ドキュメントを読む(もう一度)。

質問です。どうしたんですか?CopyTicksRangeでもCopyTicksでもカウントされません。

もっともっと読まないと...私が個人的にドキュメントからコピーして、赤の太字でマークしたものを読むまで読んでください。

引用がまとまらない...複製しないと...。

フロムエムシー

[in] 刻みの要求元となる日付。1970年01月01日からのミリ秒単位で指定 する。from_msc パラメータが 指定されない場合は、ヒストリーの先頭から刻みを返すtime >= from_msc のティックが返される。

to_msc

[in] 刻印が要求される日付。1970年01月01日からのミリ秒単位で指定 する。time <= to_msc のティックが返される。パラメータto_msc 指定されない場合、ヒストリの終わりまでのすべてのティックが与えられる


 
Boris:

それで...ドキュメントを読む(もう一度)。

質問です。どうしたんですか?CopyTicksRange経由、CopyTicks経由ではカウントされない。

例えばμl5をよく知らない私が疑問に思うのは、TimeではなくDateという言葉です。そして、それに応じて質問ですが、1日以内に何歳になるのでしょうか?

そして、ヒントの後。ミリ秒単位で時間を取得 するには?

 
Valeriy Yastremskiy:

疑問なのは、例えば、μl5をよく知らないのですが、TimeではなくDateという単語です。そして、それに応じて、同じ日付の中で、年齢が何歳なのかが問題になります。

そして、ヒントの後。ミリ秒単位で時間を取得 するには?

1秒=1000ミリ秒。また、「Date」は「Date and Time」を意味し、型は単なる日付ではなくdatetimeであるためです。

 
Alexey Viktorov:

もっと、もっと、もっと...私が個人的にドキュメントからコピーして、太い赤で強調した内容を読み終えるまで、読んでください。

残念...引用が定着しない...複製しないと...。


おいおい...ええ、まあ...効いてますね〜。

 

mql4でQUESTION。

EAのコードにスプレッド制限があり、EAが複数のチャートに設定されている。

入力パラメータにペアの平均スプレッドを入力するのは、かなり正しくありませんし、ディーリングデスクによって異なります。

平均スプレッドは5ppだが、数分間12ppまで広がる瞬間があり、ロールオーバーにはならない。

平均スプレッドを計算し、拡大したスプレッドでポジションを建てる ことがないようにするには、どのように自動化すればよいのでしょうか。

   MqlRates rates[]; 
   int copied=CopyRates(NULL,PERIOD_M1,0,100,rates); 
   if(copied>0) 
   for(int e = ArraySize(rates)-1; e >=0; e--) {
     Print(e,"=",rates[e].spread); // всегда "0"
   }
 

こんにちは、インジケータを使用せずに、取引の開始と終了のアルゴリズムに基づいてExpert Advisorを作成することは可能ですか、どのように?

例えば、2つの行を取る、1つのトレンドラインは上であり、第二も下である、互いの上に置く、2つの行の間の交差点がある、それは時間の15から30にあると仮定しましょう、その後どのように順序が自動的に任意の方向に開始すると同時に開いて、アルゴリズムがこれらの点を見つけるとオープンポジションに なるように作るには?明確な説明とご意見をお願いします。

このようなT3に基づいてEAを作ることは可能でしょうか?
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением...
 
Vitaly Muzichenko:

mql4でQUESTION。

EAのコードにスプレッド制限があり、EAが複数のチャートに設定されている。

入力パラメータにペアの平均スプレッドを入力するのは、かなり正しくありませんし、ディーリングデスクによって異なります。

平均スプレッドは5ppだが、数分間12ppまで広がる瞬間があり、ロールオーバーにはならない。

平均スプレッドを計算し、より広いスプレッドでポジションを建てない ために、これを自動化するにはどうしたらよいでしょうか。

ティックごとにスプレッドを見るのも良い方法です。レトリックとトレーダーの問題から判断して、その急激な上昇をルーズにする。私の理解では、問題は長い大きなスプレッドではなく、それが一番の問題であり、急激な大小のスプレッド拡大である。

私なら、シンボルプロパティで 指定されたものを見て、平均値とし、合理的に増加させてから注文を開始します。そして、スプレッドも見て、閉じたり、修正したりするのです。あるいは、過去3~10ティックの平均スプレッドを監視する。

 
Valeriy Yastremskiy:

ティックごとにスプレッドを見るのも良い方法です。レトリックとトレーダーが損をするほど急激に増加した場合の問題点から判断して。私が理解するところでは、問題は長い大きなスプレッドではなく、それはあまり問題ではなく、急激な大きな、そして短い増加するスプレッドです。

私なら、シンボルプロパティで 指定されたものを見て、平均値とし、合理的に増加させてから注文を開始します。そして、スプレッドも見て、閉じたり、修正したりするのです。あるいは、直近3~10ティックの スプレッドを平均的に監視することになる。

昨日約1分(10ティックではありません)平均的な通常のスプレッドが4ポイントで~14ポイントのスプレッドがありました。そこで、スプレッドが拡大した瞬間にロボットが買いに入りました。

10ティックでは明らかに不足

 
Vitaly Muzichenko:

昨日は約1分間(10ティックではない)、~14ppのスプレッドがあり、通常の平均スプレッドは4ppでした。そこで、スプレッドが拡大した瞬間にロボットが買いに入りました。

10ティックでは明らかに足りません。

ここでは、変化の始まりと終わりを固定化し、短い時間間隔で固定化することが必要です。つまり、スプレッドの平均値を1秒から10秒までフローティングウィンドウで固定する。1秒間に何回平均で刻むか、10秒間の刻みを見て平均化するとよいでしょう。私は最初の選択肢を好みます。

 
Valeriy Yastremskiy:

ここでの課題は、変更の開始と終了、および単一の変更の排出をキャプチャすることです。スプレッドの平均値は、フローティングウィンドウで1秒から10秒まで固定する必要があります。1秒間に何回平均で刻むか、10秒間の刻みを見て平均化するとよいでしょう。最初のバリエーションは、私に近いです。

そのように解決してきました。

void OnTick(void)
{
 int sp = SymbolInfoInteger(Symbol(),SYMBOL_SPREAD);

   if(CheckSpr(sp)) {
     // Здесь код отправки
   }
}

//+------------------------------------------------------------------+
bool CheckSpr(int _sp)
{
  static int ts=0, res=0;
  static long tc=0;
   tc++;
   ts += _sp;
   res =ts/tc;
   if(tc>LONG_MAX-1) {
      tc=0;
      ts=0;
   }
   // Comment( res,"=",tc );
   if(tc<500) return(false);
   return(res>_sp?true:false);
}

問題は、ロールオーバーで大きなスプレッドを記録してしまい、それで動作してしまうことです。

この解決策は効果がないと思います。どうにかして、時間制限をかけずにロールオーバー録画を制限 する必要があります。