MQL5言語をゼロから独学で学ぶ - ページ 11

 
Aliaksandr Hryshyn:

学習計画が間違っている、スタート地点が間違っている。

ここでは、関数を学習しています。

これは比較的単純なことではなく、すでに基本的な知識が必要です。

それを確認するために、この機能の問題に答えてみてください。おそらく答えられないと思いますが、それは学習の方向性が間違っていることを示しています。

My_line_2 "は引用符で囲まれ、"OBJ_VLINE " は引用符で囲まれないのはなぜですか?

ここでいうint,doubleとは どういう意味で、どう違うのでしょうか?

なぜsub_windowが 書かれていて、その逆はないのか、ポイントは?

ヘルプから関数を覚える必要はありません。言語の基本的な要素、取引環境、ファイル、あらゆる種類のデータ、その他、その時々のタスクに応じた作業の基本原則が必要なのです。

アレクサンダーさん、アドバイスありがとうございました。それらを踏まえてのことです。

ウラジミールさん、ありがとうございます。

 
MrBrooklin:

その通りなのですが、ただ出来合いの例を取るか、自分でコードを書くかは、2つの大きな違いです。少なくとも私にとっては。そして、情報提供ありがとうございました

敬具 ウラジミール

C++とMQLを完全に勉強するつもりはないが、より簡単なバリエーションを求めているのであれば、既製のコードを解説モードで整理し、著者が推奨するMQL5 Referenceを 理解するようにするとよいでしょう。

Aliaksandr Hryshyn:

学習計画が間違っている、スタート地点が間違っている。

似たような、あるいはもっと良いものを書くかもしれません)。

しかし、まず目的から始めましょう。なぜ勉強したいのか、目的達成のために具体的に何を勉強すればいいのか、そうすれば余計なことは忘れて本質的なことに集中できるかもしれません)。

 
MQL4の教科書が最適です。全くの初心者の方でも、すべてがわかりやすくなっています。正しく、最新の素材を選択すること。4ヶ月後には、自分でEAを書けるようになります。

この分野の知識(プログラミング)を全く理解していないので、自分でシラバスを作成しないでください。その結果、有能な教科書を信頼することができます。
 
VVT:

C++とMQLを完全に学ぶつもりはないが、よりシンプルなバージョンを探している場合、既成のコードを分解し、何のために、なぜ、MQL5リファレンスガイドを 使用して理解しようとすると、次のように推奨されます。

興味のあることをすべて理解すれば、同じような、あるいはそれ以上のものが書けるかもしれません)。

ただし、目的→なぜ勉強するのか、目的達成のために何を勉強する必要があるのか、から始めることで、不要なものを排除し、本質に集中することができます)

C++とMQL5というプログラミング言語を、問題が出るたびに一歩ずつ勉強しています。学んだことを補強するためにスクリプトを書いています。一歩一歩、未知のものに対する自分の中の恐怖心を取り除いているのです。少しずつ分かってきたことがあります。プログラミングの基礎だけでなく、さらに上を目指せるような根気と体力があればいいなと思います。アドバイスをありがとうございました。それらはすべて考慮されているのですしかし、「モスクワは一度にはつくれない」ということわざがある。

ウラジミールさん、ありがとうございます。

 
Реter Konow:
MQL4のチュートリアルは最高です。全くの初心者の方でも、すべてが理解できるようになっています。私たちの業界のために、正確で最新の資料を取り揃えていますね。4ヶ月ほどで、自分でEAを書けるようになります。 。

この分野の知識(プログラミング)を全く理解していないので、自分でシラバスを作成しないでください。したがって、有能な教科書を信頼してください。

ピーターさん、ありがとうございました。お名前でよろしかったでしょうか?ぜひこの本を見つけて勉強していきたいと思います。ただ今、情報過多で茫然自失になりそうな点があります。今のところ、私の自習計画によれば、すでに学習した内容を修正するためのスクリプトがあと数本残っています。

あらためて、アドバイスありがとうございました

ウラジミールさん、ありがとうございます。

 

プログラミング言語「MQL5」の勉強を続けています。新しいスクリプトNew5.mq5は、2つの時間間隔の間にトレンドラインを設定します。先ほどお約束したように、このスクリプトはプログラミングスクールの1級受講生を対象に、すべてを記述するように心がけました。

ウラジミールさん、ありがとうございます。

//+------------------------------------------------------------------+
//|                                                         New5.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//---
#property script_show_inputs
//---
/* Ранее в скриптах New2.mq5, New3.mq5 и New4.mq5 мы научились создавать горизонтальную
   и вертикальную линию на текущем графике главного окна терминала MetaTrader 5.
   Теперь мы немного усложним задачу и попробуем создать линию, но уже с привязкой двух точек по
   временнОй и ценовой координатам. Кроме того, в данном скрипте мы реализуем возможность
   изменять входные параметры нужных нам координат. Снова воспользуемся информацией имеющейся 
   в Справочнике MQL5.
   Для начала необходимо сделать так, чтобы перед установкой новой линии, у нас было место, 
   где мы могли устанавливать или менять нужные нам координаты привязки. Для этого мы должны
   воспользоваться препроцессором – специальной подсистемой компилятора MQL5, которая занимается 
   предварительной подготовкой исходного текста программы непосредственно перед ее компиляцией.
   Препроцессор позволяет также определять специфические параметры mql5-программ:
   - Объявлять константы
   - Устанавливать свойства программы
   - Включать в текст программы файлы
   - Импортировать функции
   - Использовать условную компиляцию
   В нашем случае интересен раздел "Устанавливать свойства программы", поэтому жмем на эту ссылку
   и переходим во вкладку "Свойства программ (#property)". Если внимательно просмотреть все константы, то
   можно найти "script_show_inputs" (дословный перевод - показать входы скрипта), а если быть точнее, 
   то вывести окно со свойствами перед запуском скрипта и запретить вывод окна подтверждения. Запишем
   #property script_show_inputs чуть ниже шаблона шапки скрипта.
   Движемся дальше. Создадим входные параметры скрипта. Для этого нам понадобится класс памяти input 
   который определяет внешнюю переменную. Модификатор input указывается перед типом данных. 
   Изменять значение переменной с модификатором input внутри mql5-программы нельзя, такие переменные 
   доступны только для чтения. Изменять значения input-переменных может только пользователь из окна 
   свойств программы. Простыми словами input нам нужен для того, чтобы задавать свои значения в диалоговом 
   окне скрипта в момент его запуска.   
*/

// ПИШЕМ КОД СКРИПТА
input datetime inp_time1=D'2020.10.01 14:00'; //Превая точка привязки по временнОй координате
input double inp_price1=1.17693;              //Первая точка привязки по ценой координате
input datetime inp_time2=D'2020.10.02 10:00'; //Вторая точка привязки по временнОй координате
input double inp_price2=1.17412;              //Вторая точка привязки по ценой координате
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   ObjectCreate(0,"Моя_линия_3",OBJ_TREND,0,inp_time1,inp_price1,inp_time2,inp_price2);
   
  }
//+------------------------------------------------------------------+

/* Теперь расшифруем, что именно мы создали в программном коде скрипта.
1. Первым делом мы создали четыре входных параметра, по два на каждую точку привязки. В данном скрипте
   каждая точка привязки линии имеет 2-а параметра - price и time. Каждый входной параметр начинается
   с input (переводится как "ввод").
2. После input пишется тип переменной. Например, для ценовых координат присваивается тип переменной double,
   т.к. она (цена) имеет дробную часть, а для временнЫх координат присваивается тип переменной datetime.
   Все эти сведения мы берем из уже известного нам Справочника MQL5.
3. Чтобы мы смогли вводить свои данные, нам необходимо создать четыре собственные переменные созвучные с
   price и time. Ими станут inp_time1, inp_time2, inp_price1 и inp_price2. Каждой новой переменной зададим
   конкретные значения (константы), например, input datetime inp_time1=D'2020.10.01 14:00' и т.д.
4. Дальше для создания новой линии, нам также потребуется ObjectCreate, только с некоторыми поправками.
   Во-первых, зададим для линии новое уникальное имя "Моя_линия_3". Во-вторых, зададим новый тип объекта 
   OBJ_TREND, т.к. будем создавать линию, которая может располагаться на торговом терминале в
   произвольном положении. В-третьих, там где в предыдущих скриптах мы записывали конкретные 
   величины price и time, а именно, time1, price1, time2 и price2, теперь мы должны записать вновь
   созданные нами переменные inp_time1, inp_price1, inp_time2 и inp_price2. Всё! Наш новый скрипт готов.
5. Компилируем и запускаем скрипт. Как компилировать и запускать скрипт мы уже узнали, когда создавали скрипт New2.mq5.
*/
 
MrBrooklin:

ピーターさん、ありがとうございました。あなたのお名前は正しくお使いでしょうか?ぜひこの本を見つけて勉強して いきたいと思います。ただ、今は情報の過多で圧倒されてしまう時期なんです。今のところ、自己学習計画によると、すでに学習した内容を修正するためのスクリプトがあと数本残っています。

あらためて、アドバイスありがとうございました

ウラジミールさん、ありがとうございます。

MQL4チュートリアル
Учебник по MQL4
Учебник по MQL4
  • book.mql4.com
В настоящее время персональный компьютер стал незаменимым помощником в жизни каждого человека. Благодаря развитию Интернета и увеличению мощности современных компьютеров открылись новые возможности во многих областях деятельности. Ещё десять лет назад торговля на финансовых рынках была доступна только банкам и узкому кругу специалистов. Сегодня...
 
Alekseu Fedotov:
MQL4チュートリアル

Alexeyさん、リンクありがとうございます!!!

敬具 ウラジミール

 
MrBrooklin:

ピーターさん、ありがとうございました。あなたのお名前は正しくお使いでしょうか?ぜひこの本を見つけて勉強していきたいと思います。ただ、今は情報の多さに圧倒される時期なんです。今のところ、自己学習計画によると、すでに学習した内容を修正するためのスクリプトがあと数本残っています。

あらためて、アドバイスありがとうございました

敬具 ウラジミール

ピーターもいい。:)

さて、真面目な話、この未熟な「線いじり」は置いておいて。プログラミングは複雑なので、いきなりやらないほうがいいと思います。ベースが必要です。MQL4チュートリアルの最初のレッスンから始めてください。学習曲線はあなたのためによく考えられているので心配はいりません。

読んでメモを取る。少なくとも初歩の初歩をマスターするまでは、プログラミングをしようとしてはいけません。忍耐と努力は、混沌とした独学では得られない、貴重な知識を得ることにつながります。毎日適当にクラスや教科を選んで学校に通っているようなものです。頭がドロドロになりますよ。:)

追伸:まず、変数の種類、配列の種類、ループの扱い方、簡単な関数の書き方、そして線の引き方を勉強する必要があります。その逆だと、他人のコードに縛られ、自分のアイデアでプログラムを書くことができなくなります。プログラムを 書くことは、教科書の学習の始まりではなく、フィナーレです。
 
Реter Konow:
...まず、変数の種類、配列、ループの扱い方を学び、最も簡単な関数を書いて、初めて線を引くことができるようになります。その逆だと、他人のコードに縛られ、自分のアイデアでプログラムを書くことができなくなります。プログラムを書く ことは、教科書で学ぶことの始まりではなく、最終的なものです。

Peterさん、ありがとうございます!アドバイス、心に刻みました。

ウラジミールさん、ありがとうございます。