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

 

フォーラムユーザーの皆様、こんにちは。

MT4の標準的な手段ではうまく動作しないので、インジケータ内の音を正しく整理する方法を教えてください。

私の理解では、異なるチャートからバーが始まる瞬間に、Windowsで再生される信号の流れがあります。キューに入れられるのではなく、最後に再生され、残りは失われるのです。隣接する2つのPlaySound()関数の うち、再生されるのは1つだけです。メッセージの乱れが生じたり、メッセージの整理で端末に負荷がかかったりする。

解決策としては、waveOut APIやWinampaを使用するようです。インジケータで何らかのプレイリストを作成し、外部機器に再生させることができる。 端末の負荷を軽減する必要がある。 一般的には、キューの配置に問題がある。
ググってみてください。ダミー用の詳しい解説が見つからず、自分でもわからないんです。
この問題を解決された方、または詳しい説明をご存知の方がいらっしゃいましたら、アドバイスをお願いします。多くの方に興味を持っていただけると思います。

 

どなたか助けてください!!!!

MT4で、価格チャートの右側、ストップレベルで、askとbidのラインと同じように価格が強調表示されるようにする方法を教えてくださいませんか?

ファイル:
27c3ncf5hf2.jpg  355 kb
 
zctac:

どなたか助けてください!!!!

MT4で、価格チャートの右側、ストップレベルでは、アスクとビッドと同じように価格が強調表示されるようにする方法を教えてください。

逆指値注文の価格に水平線(OBJ_HLINE)を表示します。

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_HLINE
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_HLINE
  • www.mql5.com
//| Создает горизонтальную линию                                     |                 price=0,                         width=1,            //| Перемещение горизонтальной линии                                 | //| Удаляет горизонтальную линию                                     |...
 
Algus:

フォーラムユーザーの皆様、こんにちは。

MT4の標準的な手段ではうまく動作しないので、インジケータ内の音を正しく整理する方法を教えてください。

私の理解では、異なるチャートからバーが始まる瞬間に、Windowsで再生される信号の流れがあります。キューに入れられるのではなく、最後に再生され、残りは失われるのです。隣接する2つのPlaySound()関数の うち、再生されるのは1つだけです。メッセージの乱れが生じたり、メッセージの整理で端末に負荷がかかったりする。

解決策としては、waveOut APIやWinampaのツールを使用するようです。インジケータでプレイリストのようなものを形成し、外部機器に再生を送信する。 これで端末の負荷が軽減されるはずだ。 一般的には、キューの構成に問題があると言われている。
ググってみてください。ダミー用の詳しい解説が見つからず、自分でもわからないんです。
この問題を解決された方、または詳しい説明をご存知の方がいらっしゃいましたら、アドバイスをお願いします。多くの方に興味を持っていただけると思います。

Expert Advisorやループスクリプトでは、インジケータとは異なりSleep()が動作するため、簡単に行うことができ、メロディを再生する間にこのスリップを設定して、音楽の終わりまで待機させることができます。

そして、スクリプトやEAからインジケータを呼び出します。
 
Aleksey Vyazmikin:

補助アドバイザやループスクリプトでは、インジケータと違ってSleep()が働くので、このスリップを再生する曲の間に置いて、音楽が終わるのを待つ方がやりやすい。

このインジケータは、スクリプトまたはExpert Advisorから呼び出すことができます。

ありがとうございます!考えてみます!出るという選択肢もありかもしれませんね。

問題なのは期間ではなく、行列の方です。メッセージは短いですが、たくさん、同時にあります。ここでも、端末に負担がかかる。これをシステムに与えたい。そこでは、この問題はWindowsの標準的な手段で解決されるようです。

とはいえ...かもしれませんね。

 
Algus:

ありがとうございます、考えて見ます。

問題は長さではなく、行列です。メッセージは短いが、一度にたくさんある。ここでも、端子に負荷がかかる。これをシステムに与えたい。この作業は、Windowsの標準的な手段で解決できるようです。

でも。かもしれませんね。

同じ信号が一度にたくさん来た場合は、それらをグループ化して1つの信号として再生します。または、信号の種類ごとに配列に集めて、ステップごとに実行する :)

 

ある日時になると、電波を確認する必要があります。どうしたんですか?

input datetime Input1=D'23.02.2019 08:00:27';
input datetime Input2=D'08.03.2019 09:30:20';
input datetime Input3=D'01.04.2019 12:30:27';
______________________________________________

{
//---
 A=1;B=2;
   if(rates_total<2) return(0);
     {
      int limit=rates_total-prev_calculated;
      if(limit>1) 
        {
         ArrayInitialize(BufferUP,EMPTY_VALUE);
         ArrayInitialize(BufferDN,EMPTY_VALUE);
        }
      for(int i=limit; i>=0; i--) 
        {
         if(A>B&&(TimeCurrent()==Input1 || TimeCurrent()==Input2 || TimeCurrent()==Input3))
           {
            BufferUP[i]=low[i]-10*Point;
            Alert("__",TimeCurrent());
           }
        }
     }
//--- return value of prev_calculated for next call
   return(rates_total);
  }
 
Artyom Trishkin:

その水平線(OBJ_HLINE)を逆指値注文の価格で出力する。

ご返信ありがとうございました
 
volyal:

ある日時になると、電波を確認する必要があります。どうしたんですか?

if( (A>B) && (TimeCurrent()==Input1 || TimeCurrent()==Input2 || TimeCurrent()==Input3) )

ハード」な条件なので、式全体の真値を叩いていないのでしょう。

インジケーターやExpert Advisorはティックの受信で動作しますが、ティックはあなたの条件より1秒遅く発生することがあります。

のような条件を記述する必要があります。

SZY:そうですね、一般的に、複雑な論理条件を書くときは、その条件に従う論理を失わないようにすることで、よりコンパクトな形にすることができますし、デバッグの段階で論理エラーを発見することも容易です

if(A>B)
{
   if(TimeCurrent()==Input1 || TimeCurrent()==Input2 || TimeCurrent()==Input3))
        {
            BufferUP[i]=low[i]-10*Point;
            Alert("__",TimeCurrent());
        }
}

が、それは好みの問題です。

 
Igor Makanu:

ハード」な条件なので、式全体の真値を叩かないことがほとんどです

指標や専門家はティックの受信で動作しますが、ティックはあなたの条件より1秒遅く来るかもしれません

のような条件を記述する必要があります。

SZY:そうですね、一般的に、複雑な論理条件を書くときは、その条件に従う論理を失わないようにすることで、よりコンパクトな形にすることができますし、デバッグの段階で論理エラーを発見することも容易です

が、それは好みの問題です。

ありがとうございます。単純に>=は不可能で、最初の日付の後に一定の信号がある、あなたは時間範囲を設定する必要があります。どのように設定するのですか?