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

 
Oleg:

同僚、ろうそくの希望の音量になると音が出なくなるのはなぜか、アドバイスしてください。

サウンドファイルはSOUNDSフォルダにあり、アラートを設定するとファイルは正常に再生されますが、インジケーターに音が出ません。

それとも、インジケーター用の音が入った専用のフォルダが必要なのでしょうか?


/----インジケータ計算の メインループ

for(bar=limit; bar>=0 && !IsStopped(); bar--)
{
Range=(high[bar]-low[bar])/_Point;
IndBuffer[bar]=Range;

if(Range<5)
{
if (prev_calculated > 0 && Flag==0)
{
Flag=1;
}
}
if(Range>=Threshold){
clr=0;
if (prev_calculated > 0 && Flag==1 )
{
Flag=0;

PlaySound("zummer");


}
}.

for(bar=limit; bar>=0 && !IsStopped(); bar--)
{
  Range=(high[bar]-low[bar])/_Point;
  IndBuffer[bar]=Range;

  if(Range<5)
  {
    if (prev_calculated > 0 && Flag==0)
    {
      Flag=1;
    }
  }

  if(Range>=Threshold) {
    clr=0;
    if (prev_calculated > 0 && Flag==1 )
    {
      Flag=0;
      ResetLastError();
      PlaySound("zummer");
      Print(__FUNCTION__, " Error #", GetLastError());
    }
  }
}



そして、どのようなエラーが出たかをここに投稿してください。

 
Иван:
こんにちは。質問:テスターでクロス($なしのペア)を扱う際、テストを行う口座がドル口座の場合、MT4でクローズしたポジションの 結果はどのように計算されるのでしょうか?ドル建てのポジション合計の再計算では、テスターは、現在の時点またはテスト区間の時点のクロスの基準通貨の 対ドル為替レートを採用するのでしょうか。現在のところ、そうであることを強く疑っています。その場合、インターバルの時点でカウントさせることはできないのでしょうか?

Taras Slobodyanik:

各ティック 自体のMODE_TICKVALUEを読み取る。

まあ、カウントされるとしましょう。しかし、テスターは、その湾曲した計算ではなく、私が計算した値をResultsテーブルに表示するよう、どのように「依頼」することができるのでしょうか?
 
Mihail Matkovskij:

https://www.mql5.com/ru/forum/160683/page1208#comment_17279150 をよく見てください。そこには何もないんですか...?

これがその機能です。

もうちょっと丁寧にやってくれよー。

MQL4リファレンスとMQL5 リファレンスの全関数リストをよく見てみると、以下のように書かれています。

という関数が見つかりませんでした。

searshValue(double & array2D[2][], const int _len, const int _index, const double _value)

見つからなかったんです。リンク先の例を拝見しました。機能不明なコードを見た。しかし、この機能が何語からきているのか、私の疑問に対する答えは見つかっていない。MQL4やMQL 5にあれば、それぞれのディレクトリの機能一覧に あると思います。

そして、カスタム機能だと思い込んでいました。しかし、Kovalevの記事によると、カスタム関数の計算はstart()の下限の外側で行われるそうです
。 また、MTでコードを書く場合、MQL4やMQL 5に限らず、他の言語の関数を使うことができると書いてありました。

識別子CONSTを持つ変数がこの関数のパラメータとしてリストアップされます。MQL4 では遭遇したことがなく、戸惑いも ありました。
あなたのプログラミングスキルは、私とは何桁も違うのでしょうけど。まだ理解し始めたばかりです。厳しく判断せず、鈍感でくだらない質問をしてしまう私に寛容でいてほしいということです。私が必要とする情報へのリンクを送っていただくか、どこを読めばいいのか教えていただければありがたいです。

もうひとつ...。新しいEAを作成し、最初に送っていただいたコードをコピーして、エラーなくコンパイルしました。私はそれに何の変更も加えなかった.テスターでEAを動かしてみて、台帳にPrint()関数がないことにとても驚きました。私たちのEAでも何度も実行されていますが。
また、情報的なサポートや貴重な情報をありがとうございました。

 
ANDREY:

もしかしたら、お互いに理解できていなかったのかもしれないし、私の質問の仕方が悪かったのかもしれませんが......。 ハンドブックにある全機能のリストをよく見てみると......。

アンドレイ、私があなたを厳しく批判しているとは思わないでください。関数の由来がわからない場合は、関数を右クリックして「Alt+Gの定義に移動」を選択します。そして、わからないことがあっても恥ずかしがらないでください。それが普通です。

プログラミングの方法を学ぶにはそのためには、「何のために使うのか」という問いに答える必要があります。トレーディングロボットやテクニカル分析プログラムの作成用であれば、MQLにある関連する例やレッスン、記事のみです。本もそうかもしれませんね。しかし、MQLを知 ると、かなり覚えましたので、本を読まず、ドキュメントを読んでいるだけです。まず、プログラムの内容を理解することをお勧めします。そのためには、まずMQLのイベントモデルの勉強から始めましょう: https://docs.mql4.com/ru/basis/function/events . これはベーシックなモデルです。使いこなせれば、簡単に次のステップに進めます。たぶんこれが役に立つでしょう:MQL5を始める:簡単なExpert AdvisorとIndicatorを書く(私は検索エンジンを使いました)。もっと詳しく:言語の基礎 知識 .特に:関数の呼び出しとパラメータの受け渡し(質問があるところ)。勉強中に疑問が生じたら(出てくるはず)、Google検索やYouTubeを利用するとよいでしょう。またはここで質問してください。理想は、C++を習得 することです。構文について何かググると、「C++」も 追加されています。

Функции обработки событий - Функции - Основы языка - Справочник MQL4
Функции обработки событий - Функции - Основы языка - Справочник MQL4
  • docs.mql4.com
В языке MQL4 предусмотрена обработка некоторых предопределенных событий. Функции для обработки этих событий должны быть определены в программе MQL4: имя функции, тип возвращаемого значения, состав параметров (если они есть) и их типы должны строго соответствовать описанию функции-обработчика события. Именно по типу возвращаемого значения и по...
 
Mihail Matkovskij:

アンドレイ、私があなたを厳しく批判しているとは思わないでください。この機能がどこから来ているのか分からない場合は、右クリックして「Alt+Gの定義に移動」を選択してください。そして、わからないことがあっても恥ずかしがらないでください。それが普通です。

プログラミングの方法を学ぶにはそのためには、「何のために使うのか」という問いに答える必要があります。トレーディングロボットやテクニカル分析プログラムの作成用であれば、MQLにある関連する例やレッスン、記事のみです。本もそうかもしれませんね。しかし、MQLを知 ると、かなり覚えましたので、本を読まず、ドキュメントを読んでいるだけです。まず、プログラムの内容を理解することをお勧めします。そのためには、まずMQLのイベントモデルの勉強から始めましょう: https://docs.mql4.com/ru/basis/function/events . これは基本的なモデルです。使いこなせれば、簡単に次のステップに進めます。たぶんこれが役に立つでしょう:MQL5を始める:簡単なExpert AdvisorとIndicatorを書く(私は検索エンジンを使いました)。また、言語の基本.特に:関数の呼び出しとパラメータの受け渡し(質問があるところ)。勉強中に疑問が生じたら(出てくるはず)、Google検索やYouTubeを利用するとよいでしょう。またはここで質問してください。理想は、C++を習得 することです。シンタックスについて何かググったら、「C++」も 自由に追加してください。

アドバイスやヒントをありがとうございました。数年前、モスクワにあるテレトレードの無料FX講座に参加したのがすべての始まりです。何もすることがなく、余ったお金をどこかに使いたいと思ったのがきっかけでした。しかし、講座を修了してすぐに、「行き当たりばったりの取引は確実に損をする......」という考えが浮かんできました。時折、勝利を収めてもだから、システムを持つまでは自分のお金でギャンブルをしないと固く決めていて、卒業するまではPCも持っていなかったんです。私は数学者ではありません。パソコンを買ってMT4で遊べるようになってから、パソコンとMT4から離れられなくなりました。自分を見ていても、この抗しがたい不合理な渇望はどこから来るのか理解できない。お金だけじゃないと思うんです。お金があれば大丈夫。私は働いていないので、時間はいくらでもあります。そして、あまり長く引きずらないように、何か占有するものが必要です。FXやプログラミングを勉強していると、気づかないうちに時間がどんどん過ぎていくので、コースを卒業した後は、パソコンを使いこなすのに時間がかかり、同時にMTでチャートとにらめっこしながら、どうして価格がある方向に動くのか、その理由を理解しようと努力していました。チャートに魅せられ、魅了され、脳内に強い支配的なポジションを作り出したと言えるでしょう。パソコンやインターネット、FXの理解が進むにつれ、アルゴリズム取引について知り、読んでみることにしました。そして、コバレフさんのチュートリアルで少しコードを覚えたほど、引き込まれました。本の内容を理解し、コーディングしながら応用しようとすればするほど、さまざまな考えが浮かんできて、それをコーディングするようにしました。しかし、数ヶ月前、全く予期せず、偶然に、EUR-USDとFUNT-DOLLARのペアで非常に明確に現れる一つのパターンを見ました。このパターンで何とかコーディングしました。そして、このコードを使ったExpert Advisorは、2008年からテスターで残高グラフを描き、許容範囲のドローダウンで常に上昇を続けているのです。これが、MQL4プログラミングの勉強にさらに熱中する強力な原動力となったのです。今のところ、MQL5の 勉強を始めるほどにはマスターしていません。

また、リンクとコメントをありがとうございました。

これはバランスチャートです

このグラフをより最適なものにするためのアイデアがあります。でも、まだ全部をコーディングするほどの経験はないんです。

 
ANDREY:

MQL4を習得してMQL5に進むと、さらに引き込まれる...。:)

 
Mihail Matkovskij:

MQL4を習得してMQL5に進むと、さらに引き込まれる...。:)

どれだけ早く実現するか...。

 
Mihail Matkovskij:

関数の由来がわからない場合は、関数を右クリックして「Alt+Gの定義にジャンプ」を選択します。そして、わからないことがあっても恥ずかしがらないでください。それでいいんです。

私にとっては貴重なメニューです。そして、その機能性についても、皆さんから教えていただき、とても嬉しかったです。しかし、なぜか私にはうまくいきません。いろいろなオプションを試しました。

関数(括弧の前のその場所)にカーソルを合わせて右クリック。コンテキストメニュー「Goto Alt+G」が有効に なります。クリックしても何も起こらない。英語と大文字でAlt+Gを押しても何も 起きない。

ヘルプというか、マウスの右ボタンで機能を説明するところに放り込むべきかと思います。
MT-4 build 1260
MetaEditorのヘルプを読みましたが、この機能についての記載が見つかりませんでした。そしてこのアイテムは、私にとってとても貴重なものです。MetaEditorの設定が抜けているのでは?
なぜこのアイテムがダメなのか、感想を聞かせてもらえるとありがたいです。

これは私が使っているMetaEditorのツールバーです。多くのボタンはアクティブではありません。もしかして、このボタンのどれかが原因?


 
ANDREY:

アドバイスやヒントをありがとうございました。私の場合、数年前にモスクワのテレトレードで無料のFX講座を受けたのが始まりでした。何もすることがなく、余ったお金をどこかに回したいという気持ちからでした。しかし、講座を修了してすぐに、「行き当たりばったりの取引は確実に損をする......」という考えが浮かんできました。時折、勝利を収めてもだから、システムを持つまでは自分のお金でギャンブルをしないと固く決めていて、卒業前はPCすら持っていなかったんです。私は 数学者では ありません。パソコンを買ってMT4をコースに入れた時から、今に至るまでパソコンとMT4から離れられないです。自分を見ていても、この抗しがたい不合理な渇望はどこから来るのか理解できない。お金だけじゃないと思うんです。お金があれば大丈夫。私は働いていないので、時間はいくらでもあります。そして、あまり長く引きずらないように、何か占有するものが必要です。FXやプログラミングを勉強していると、気づかないうちに時間がどんどん過ぎていくので、コースを卒業した後は、パソコンを使いこなすのに時間がかかり、同時にMTでチャートとにらめっこしながら、どうして価格がある方向に動くのか、その理由を理解しようと努力していました。チャートに魅せられ、魅了され、脳内に強い支配的なポジションを作り出したと言えるでしょう。パソコンやインターネット、FXの理解が進むにつれ、アルゴリズム取引について知り、読んでみることにしました。しかも、コバレフさんのチュートリアルで少しコーディングを学んだほど、引き込まれました。本の内容を理解し、コーディングしながら応用しようとすればするほど、さまざまな考えが浮かんできて、それをコーディングするようにしました。しかし、数ヶ月前、全く予期せず、偶然に、EUR-USDとFUNT-DOLLARのペアで非常に明確に現れる一つのパターンを見ました。このパターンで何とかコーディングしました。そして、このコードを使ったExpert Advisorは、2008年からテスターで残高グラフを描き、許容範囲のドローダウンで常に上昇を続けているのです。これが、MQL4プログラミングの勉強にさらに熱中する強力な原動力となったのです。今のところ、MQL5の 勉強を始めるほどにはマスターしていません。

また、リンクを貼っていただき、正しい方向に導いていただきありがとうございます。

これはバランスチャートです

このグラフをより最適なものにするためのアイデアがあります。しかし、それを徹底的に体系化するには、まだ経験が不足しています。

プログラマーにとって最も重要なことは、課題を設定し、それを解決する方法を見出すことができることです。そして、これが数学的な考え方を定義しているのです。考え方を変えることができれば、神様は喜んでくださるでしょう。

そして、あなたがmql4で書こうとしている場合、常に言語の類似性を見つけるためにドキュメントmql5を見て、その後、あなたはすでにmql5を扱っているmql4に対処したことを考慮します。言語は非常に似ているので、類似点を挙げるより相違点を挙げる方が簡単です。

コバレフの教科書はずいぶん前に書かれたものなので、何かを書く前に、教科書の例で使われているものがしばらくは使えるとしても、最新の方法を探す必要がある場合がほとんどです。

この記事は、mql5への移行だけでなく、Sergei Kovalevが説明したmql4と最新のmql4との違いを理解する上でも、大いに役立つと思います。
Переход с MQL4 на MQL5
Переход с MQL4 на MQL5
  • www.mql5.com
Данная статья, построенная в форме справочника по функциям MQL4, призвана помочь переходу с MQL4 на MQL5. Для каждой функции языка MQL4 приведено описание и представлен способ ее реализации на MQL5, что позволит вам значительно ускорить перевод своих программ с MQL4 на MQL5. Для удобства функции разбиты на группы, как в документации по MQL4.
 
Alexey Viktorov:

プログラマーにとって最も重要なことは、問題を設定し、それを解決する方法を見出すことができることです。そして、それこそが数学的マインドセットの定義なのです。もし、あなたが考え方を変えることができたなら、神はあなたを助けてくれるでしょう。

そして、あなたがmql4で書こうとしている場合、常に言語の類似性を見つけるためにドキュメントmql5を見て、その後、あなたはすでにmql5を扱っているmql4に対処したことを考慮します。言語は非常に似ているので、類似点を挙げるより相違点を挙げる方が簡単です。

コバレフの教科書はずいぶん前に書かれたものなので、ほとんどの場合、何かを書く前に、教科書の例で使われているものがしばらくは使えるとしても、最新の方法を見つける必要があります。

貴重な情報をありがとうございました。

数学的マインドセットについて。ゼロからなので・・・・。ながすぎコバレフさんの教科書をなんとなく知っていて、エラーなくコンパイルできるプリミティブなコードまで書けるようになり、「grail」に近いものまでコード化した・・・ということは、自分の考え方が必要な方向に変わってきている・・・、そう思えるようになったのです。
大丈夫なのか、教えてください・・・。MetaEditor 4でMQL5関数を実行することはできますか?

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