//+------------------------------------------------------------------------------------------+//| ArraySetAsSeries.mq4 |//+------------------------------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------------------------------+//------------------------------------ НАЧАЛО START -------------------------------------- 1 -int start() //функция start
{ //начало startdouble Timestart=GetTickCount(); //переменная, с помощью которой вычисляется время (в милисекундах) начала выполнения скриптаdouble array1[][6]; //объявляем массив-источник (массив, из к-о будут скопированы данные)double array2[][6]; //объявляем массив-приемник (массив, куда будут скопированы данные), к-й на
//момент объявления заполнен некоторыми даннымиint element_1=ArrayCopyRates(array1); //копируем данные баров текущего графика в массив array1 int element_2=ArrayCopy(array2,array1,0,0,WHOLE_ARRAY); //копируем данные всех баров в пользовательский массивbool element_3=ArrayGetAsSeries(array2); //проверка: является ли массив array1 массивом-таймсериейbool try_1=ArraySetAsSeries(array2,false); //устанавливаем НАПРАВЛЕНИЕ индексирования массива bool element_4=ArrayGetAsSeries(array2); //проверка: является ли массив array2 массивом-таймсериейdouble element=array2[0][1]; //получаем значение цены открытия нулевого бара//----------------------------------------------------------------------------------------- 2 -Comment("\nФункция ArrayCopyRates(array1) вернула: ",element_1,
"\nФункция ArrayCopy(array2,array1,0,WHOLE_ARRAY) вернула: ",element_2,
"\nФункция ArrayGetAsSeries(array2) вернула: ",element_3,
"\nФункция ArraySetAsSeries(array2;false) вернула: ",try_1,
"\nФункция ArrayGetAsSeries(array2) вернула: ",element_4,
"\nЦена открытия нулевого бара (т.е. бара с ИНДЕКСОМ 0) равна: ",element,
"\nСкрипт выполнялся всего ",GetTickCount()-Timestart," миллисекунд, из них: ",
MathFloor((GetTickCount()-Timestart)/1000)," секунд ",((GetTickCount()-Timestart)/1000-MathFloor((GetTickCount()-Timestart)/1000))*1000,
" миллисекунд");//печать сообщения на экран//----------------------------------------------------------------------------------------- 3 -return(0); //выход из start
} //конец start//-------------------------------------- КОНЕЦ START -------------------------------------- 4 -
double array1[][6]; //объявляем массив-источник (массив, из к-о будут скопированы данные)double array2[][6]; //объявляем массив-приемник (массив, куда будут скопированы данные), к-й на
フィボナッチラインを完成さ せることは可能なのでしょうか?
これらの線がチャートに引かれると、そのレベルの価格が自動的にレベルに対して書き込まれることになる。
そして、ファイバーが伸びるにつれて自動的に変化 します
絵を描くこと
ありがとうございます!それと、何を直したのか、教えてください。コードの比較は苦手
もちろんできます。なぜ動かないのですか?
みんな))mqlがわからない
何を掘ればいいのか、どのファイルを編集すればいいのか、教えてください。
みんな))mqlがわからない
何を掘ればいいのか)、どのファイルを編集すればいいのか、教えていただけませんか?
あなたの選択です。
仕事内容
選べるように。
ありがとうございました)
すべて決定。ありがとうございます:%)
ありがとうございます!何を直したのか、教えてください。コードの比較は苦手
その技術的な実装についてアドバイスをお願いします。
ワークステーションのインターネット接続が失われた場合、ワークステーションに接続されている電話機またはgsmモデム(同じ)は、SMSメッセージを送信するのでしょうか?
その技術的な実装についてアドバイスをお願いします。
ワークステーションのインターネット接続が失われた場合は、ワークステーションに接続(同じ)電話またはgsm -モデム、SMSメッセージの送信を実行?
ICQにメッセージを送るプログラムがあったんです。ファイルと説明のあるページ ... https://www.mql5.com/ru/code/10352
Expert Advisorのコードでは、インターネットが壊れたときにメッセージを送信し、接続の機能をレイアウトすることができます....
まさに
スクリプトを少し修正しました。
その結果、以下のようになりました。
この場合、ArrayCopyRates(array1)関数を使って、現在のチャートのバーのデータを2次元の配列array1にコピーしたのですが、自然に疑問が湧いてきました。そして次の行で関数ArrayCopy(array2,array1,0,0,WHOLE_ARRAY)で、array1のデータをarray2にコピーしているのですが、array1のデータをarray1にコピーすることはできません。そして、ArrayGetAsSeries関数を使って、array2が配列-時系列であるかどうかをチェックしました。そして、(スクリーンショットから分かるように)配列は時系列配列であることが判明しました。しかし、私は以前にArraySetAsSeries関数でそれを「処理」していませんでした。
質問:最初のケース(前の質問)では、ArraySetAsSeries関数を使用する必要があったのに(私の配列を時系列配列として整理するため)、今回のケースではそのような処理を必要としないのはなぜですか?
P.S. しつこくてすみません。ただ、「歴史の隙間」を作らないように、完全に理解したいだけなんです。これまでのご返信ありがとうございました。
スクリプトを少し修正しました。