초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 689 1...682683684685686687688689690691692693694695696...1503 새 코멘트 Andrey F. Zelinsky 2016.12.03 21:38 #6881 Roma Ivanov : 여기에서 가져온 공식 - https://www.mql5.com/ru/articles/1492 기사에서 참조로 -- 연산 ^는 지수입니다. Artyom Trishkin 2016.12.03 21:40 #6882 Roma Ivanov : 여기에서 가져온 공식 - https://www.mql5.com/en/articles/1492 읽지 않는다. 그러나 기사 (Excel)의 공식과 그래프로 판단 - 지수. 내가 틀릴 수 있다 Mikhail Toptunov 2016.12.04 06:53 #6883 좋은 시간! 2차원 배열을 *.csv 형식으로 변환하는 방법이 궁금했는데 적당한 예를 찾았는데 mt4의 경우 5번째에 필요합니다. //+------------------------------------------------------------------+ //| generateCsv.mq4 | //| Copyright © 2006, Antonio Banderass. All rights reserved | //| banderassa@ukr.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2006, Antonio Banderass. All rights reserved" #property link "banderassa@ukr.net" #property library #define ARRAY_SIZE_X 16 #define ARRAY_SIZE_Y 16 //+------------------------------------------------------------------+ //| PrepareString | //+------------------------------------------------------------------+ string PrepareString( string s) { bool exit = false ; int index = 0 ; string str = s; //---- while (!exit) { index = StringFind (str, "." , index); if (index > - 1 ) str = StringSetCharacter (str, index, ',' ); else exit = true ; } return (str); } //+------------------------------------------------------------------+ //| GenerateCsv | //+------------------------------------------------------------------+ int GenerateCsv( string fileName, int arraySizeX, int arraySizeY, double arrayIndexX[] , double arrayIndexY[] , double arrayZ[][] ) // Ругается говорит - arrays are passed by reference only пробовал добавить &_array.. но запинается на двумерном { int handle = FileOpen (fileName, FILE_CSV | FILE_WRITE , ' ' ), x, y; string str; if (handle < 1 ) { Print ( "Error:" , GetLastError ()); return (handle); } else { str = ";" ; for (x = 0 ; x < arraySizeX; x++) { str = str + arrayIndexX[x]; str = str + ";" ; } FileWrite (handle, PrepareString(str)); for (y = 0 ; y < arraySizeY; y++) { str = "" ; str = str + arrayIndexY[y] + ";" ; for (x = 0 ; x < arraySizeX; x++) { str = str + arrayZ[x,y]; str = str + ";" ; } FileWrite (handle, PrepareString(str)); } } FileClose (handle); return (handle); } //+------------------------------------------------------------------+ https://www.mql5.com/en/articles/1443 Трёхмерные графики - профессиональный инструмент анализа рынка 2006.12.06Antoniuk Olegwww.mql5.com В это статье мы напишем простую библиотеку для создания трехмерных графиков и последующего их проcмотра в Microsoft Excel. Мы воспользуемся стандартными возможностями языка MQL 4 для подготовки и экспорта данных в файл формата *.csv. 파일: 3dGraphicOut.mq4 2 kb generateCsv.mq4 3 kb generateCsv.mqh 5 kb Questions from Beginners MQL5 Any rookie question, so 포럼을 어지럽히 지 않도록 Artyom Trishkin 2016.12.04 08:14 #6884 Top2n : 좋은 시간! 2차원 배열을 *.csv 형식으로 변환하는 방법이 궁금했는데 적당한 예를 찾았는데 mt4의 경우 5번째에 필요합니다. https://www.mql5.com/en/articles/1443 배열은 참조로만 전달할 수 있습니다. int GenerateCsv( string fileName, int arraySizeX, int arraySizeY, double & arrayIndexX[], double & arrayIndexY[], double & arrayZ[][]) Mikhail Toptunov 2016.12.04 09:07 #6885 Artyom Trishkin : 배열은 참조로만 전달할 수 있습니다. int GenerateCsv( string fileName, int arraySizeX, int arraySizeY, double & arrayIndexX[], double & arrayIndexY[], double & arrayZ[][]) 그러나 & arrayZ[][]에서 맹세합니다 - '[' - 잘못된 인덱스 값 Artyom Trishkin 2016.12.04 09:11 #6886 Top2n : 그러나 & arrayZ[][]에서 맹세합니다 - '[' - 잘못된 인덱스 값 arrayZ의 차원은 몇 개입니까? Mikhail Toptunov 2016.12.04 10:14 #6887 Artyom Trishkin : arrayZ의 차원은 몇 개입니까? 선언 및 arrayZ[][3000], 16과 같으면 일반적으로 이벤트 처리 기능 을 찾을 수 없습니다. #define ARRAY_SIZE_X 16 #define ARRAY_SIZE_Y 16 int start() { int x, y; double arrayIndexX[ARRAY_SIZE_X]; double arrayIndexY[ARRAY_SIZE_Y]; double arrayZ[ARRAY_SIZE_X,ARRAY_SIZE_Y]; //---- for (x = 0 ; x < ARRAY_SIZE_X; x++) arrayIndexX[x] = x / 10.0 ; //---- for (y = 0 ; y < ARRAY_SIZE_Y; y++) arrayIndexY[y] = y / 10.0 ; //---- for (x = 0 ; x < ARRAY_SIZE_X; x++) for (y = 0 ; y < ARRAY_SIZE_Y; y++) arrayZ[x,y] = MathSin (arrayIndexX[x] + arrayIndexY[y]); GenerateCsv( "test.csv" , ARRAY_SIZE_X, ARRAY_SIZE_Y, arrayIndexX, arrayIndexY, arrayZ ); // 'arrayZ' - parameter conversion not allowed //---- return ( 0 ); } //+------------------------------------------------------------------+ //| PrepareString | //+------------------------------------------------------------------+ string PrepareString( string s) { bool exit = false ; int index = 0 ; string str = s; //---- while (!exit) { index = StringFind (str, "." , index); if (index > - 1 ) str = StringSetCharacter (str, index, ',' ); else exit = true ; } return (str); } //+------------------------------------------------------------------+ //| GenerateCsv | //+------------------------------------------------------------------+ int GenerateCsv( string fileName, int arraySizeX, int arraySizeY, double &arrayIndexX[], double &arrayIndexY[], double &arrayZ[][3000]) { int handle = FileOpen (fileName, FILE_CSV | FILE_WRITE , ' ' ), x, y; string str; if (handle < 1 ) { Print ( "Error:" , GetLastError ()); return (handle); } else { str = ";" ; for (x = 0 ; x < arraySizeX; x++) { str = str + arrayIndexX[x]; str = str + ";" ; } FileWrite (handle, PrepareString(str)); for (y = 0 ; y < arraySizeY; y++) { str = "" ; str = str + arrayIndexY[y] + ";" ; for (x = 0 ; x < arraySizeX; x++) { str = str + arrayZ[x,y]; str = str + ";" ; } FileWrite (handle, PrepareString(str)); } } FileClose (handle); return (handle); } //+------------------------------------------------------------------+ Questions from Beginners MQL5 Any rookie question, so 포럼을 어지럽히 지 않도록 Artyom Trishkin 2016.12.04 10:46 #6888 Top2n : 선언 및 arrayZ[][3000] string PrepareString( string s); int GenerateCsv( string fileName, int arraySizeX, int arraySizeY, double &arrayIndexX[], double &arrayIndexY[], double &arrayZ[][3000]); int start() { int x, y; double arrayIndexX[ARRAY_SIZE_X]; double arrayIndexY[ARRAY_SIZE_Y]; double arrayZ[ARRAY_SIZE_X,ARRAY_SIZE_Y]; //---- for (x = 0 ; x < ARRAY_SIZE_X; x++) arrayIndexX[x] = x / 10.0 ; //---- for (y = 0 ; y < ARRAY_SIZE_Y; y++) arrayIndexY[y] = y / 10.0 ; //---- for (x = 0 ; x < ARRAY_SIZE_X; x++) for (y = 0 ; y < ARRAY_SIZE_Y; y++) arrayZ[x,y] = MathSin (arrayIndexX[x] + arrayIndexY[y]); GenerateCsv( "test.csv" , ARRAY_SIZE_X, ARRAY_SIZE_Y, arrayIndexX, arrayIndexY, arrayZ ); // 'arrayZ' - parameter conversion not allowed //---- return ( 0 ); } 당신은 이미 그것을 가져갔다. 그곳에서 모든 것이 어떻게 이루어지나요? 모바일로 작성중이라 안보이네요. Subscribers 2016.12.04 10:57 #6889 CAppDialog 클래스를 사용하여 만든 패널의 색상을 변경하려면 어떻게 해야 합니까? if (!CAppDialog::Create(chart,name,subwin,x1,y1,x2,y2)) return ( false ); Mikhail Toptunov 2016.12.04 11:23 #6890 Artyom Trishkin : 당신은 이미 그것을 가져갔다. 그곳에서는 모든 것이 어떻게 이루어지나요? 안보이고 모바일로 작성중입니다. 방해해서 미안해 //+------------------------------------------------------------------+ //| start | //+------------------------------------------------------------------+ int start() {а надо //+------------------------------------------------------------------+ //| start | //+------------------------------------------------------------------+ int OnStart { 그러나 파일은 요청된 데이터가 아닌 결과 - 하나의 열이 17행으로 채워짐 부울 true StringSetChar - 처음에 cursed 문자열 이 있는 줄이 있습니다. 부울 로 변경 StringSetCharacter - 이 때문에 부울 값을 제공합니다. //+------------------------------------------------------------------+ //| PrepareString | //+------------------------------------------------------------------+ string PrepareString( string s) { bool exit = false ; int index = 0 ; string str = s; //---- while (!exit) { index = StringFind (str, "." , index); if (index > - 1 ) str = StringSetChar (str, index, ',' ); else exit = true ; } return (str); } 파일: generateCsv.mqh 5 kb VCSV.mq5 3 kb Questions from Beginners MQL5 Multi Timeframe Indicators 다중 기간 표시기 1...682683684685686687688689690691692693694695696...1503 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
여기에서 가져온 공식 - https://www.mql5.com/ru/articles/1492
여기에서 가져온 공식 - https://www.mql5.com/en/articles/1492
읽지 않는다. 그러나 기사 (Excel)의 공식과 그래프로 판단 - 지수.
내가 틀릴 수 있다
좋은 시간! 2차원 배열을 *.csv 형식으로 변환하는 방법이 궁금했는데 적당한 예를 찾았는데 mt4의 경우 5번째에 필요합니다.
//| generateCsv.mq4 |
//| Copyright © 2006, Antonio Banderass. All rights reserved |
//| banderassa@ukr.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, Antonio Banderass. All rights reserved"
#property link "banderassa@ukr.net"
#property library
#define ARRAY_SIZE_X 16
#define ARRAY_SIZE_Y 16
//+------------------------------------------------------------------+
//| PrepareString |
//+------------------------------------------------------------------+
string PrepareString( string s)
{
bool exit = false ;
int index = 0 ;
string str = s;
//----
while (!exit)
{
index = StringFind (str, "." , index);
if (index > - 1 )
str = StringSetCharacter (str, index, ',' );
else
exit = true ;
}
return (str);
}
//+------------------------------------------------------------------+
//| GenerateCsv |
//+------------------------------------------------------------------+
int GenerateCsv( string fileName, int arraySizeX, int arraySizeY,
double arrayIndexX[] , double arrayIndexY[] , double arrayZ[][] ) // Ругается говорит - arrays are passed by reference only пробовал добавить &_array.. но запинается на двумерном
{
int handle = FileOpen (fileName, FILE_CSV | FILE_WRITE , ' ' ), x, y;
string str;
if (handle < 1 )
{
Print ( "Error:" , GetLastError ());
return (handle);
}
else
{
str = ";" ;
for (x = 0 ; x < arraySizeX; x++)
{
str = str + arrayIndexX[x];
str = str + ";" ;
}
FileWrite (handle, PrepareString(str));
for (y = 0 ; y < arraySizeY; y++)
{
str = "" ;
str = str + arrayIndexY[y] + ";" ;
for (x = 0 ; x < arraySizeX; x++)
{
str = str + arrayZ[x,y];
str = str + ";" ;
}
FileWrite (handle, PrepareString(str));
}
}
FileClose (handle);
return (handle);
}
//+------------------------------------------------------------------+
https://www.mql5.com/en/articles/1443
좋은 시간! 2차원 배열을 *.csv 형식으로 변환하는 방법이 궁금했는데 적당한 예를 찾았는데 mt4의 경우 5번째에 필요합니다.
https://www.mql5.com/en/articles/1443
배열은 참조로만 전달할 수 있습니다.
double & arrayIndexX[], double & arrayIndexY[], double & arrayZ[][])
배열은 참조로만 전달할 수 있습니다.
double & arrayIndexX[], double & arrayIndexY[], double & arrayZ[][])
그러나 & arrayZ[][]에서 맹세합니다 - '[' - 잘못된 인덱스 값
arrayZ의 차원은 몇 개입니까?
선언 및 arrayZ[][3000], 16과 같으면 일반적으로 이벤트 처리 기능 을 찾을 수 없습니다.
#define ARRAY_SIZE_Y 16
int start()
{
int x, y;
double arrayIndexX[ARRAY_SIZE_X];
double arrayIndexY[ARRAY_SIZE_Y];
double arrayZ[ARRAY_SIZE_X,ARRAY_SIZE_Y];
//----
for (x = 0 ; x < ARRAY_SIZE_X; x++)
arrayIndexX[x] = x / 10.0 ;
//----
for (y = 0 ; y < ARRAY_SIZE_Y; y++)
arrayIndexY[y] = y / 10.0 ;
//----
for (x = 0 ; x < ARRAY_SIZE_X; x++)
for (y = 0 ; y < ARRAY_SIZE_Y; y++)
arrayZ[x,y] = MathSin (arrayIndexX[x] + arrayIndexY[y]);
GenerateCsv( "test.csv" , ARRAY_SIZE_X, ARRAY_SIZE_Y, arrayIndexX, arrayIndexY, arrayZ ); // 'arrayZ' - parameter conversion not allowed
//----
return ( 0 );
}
//| PrepareString |
//+------------------------------------------------------------------+
string PrepareString( string s)
{
bool exit = false ;
int index = 0 ;
string str = s;
//----
while (!exit)
{
index = StringFind (str, "." , index);
if (index > - 1 )
str = StringSetCharacter (str, index, ',' );
else
exit = true ;
}
return (str);
}
//+------------------------------------------------------------------+
//| GenerateCsv |
//+------------------------------------------------------------------+
int GenerateCsv( string fileName, int arraySizeX, int arraySizeY,
double &arrayIndexX[], double &arrayIndexY[], double &arrayZ[][3000])
{
int handle = FileOpen (fileName, FILE_CSV | FILE_WRITE , ' ' ), x, y;
string str;
if (handle < 1 )
{
Print ( "Error:" , GetLastError ());
return (handle);
}
else
{
str = ";" ;
for (x = 0 ; x < arraySizeX; x++)
{
str = str + arrayIndexX[x];
str = str + ";" ;
}
FileWrite (handle, PrepareString(str));
for (y = 0 ; y < arraySizeY; y++)
{
str = "" ;
str = str + arrayIndexY[y] + ";" ;
for (x = 0 ; x < arraySizeX; x++)
{
str = str + arrayZ[x,y];
str = str + ";" ;
}
FileWrite (handle, PrepareString(str));
}
}
FileClose (handle);
return (handle);
}
//+------------------------------------------------------------------+
선언 및 arrayZ[][3000]
string PrepareString( string s);
int GenerateCsv( string fileName, int arraySizeX, int arraySizeY,
double &arrayIndexX[], double &arrayIndexY[],
double &arrayZ[][3000]);
int start()
{
int x, y;
double arrayIndexX[ARRAY_SIZE_X];
double arrayIndexY[ARRAY_SIZE_Y];
double arrayZ[ARRAY_SIZE_X,ARRAY_SIZE_Y];
//----
for (x = 0 ; x < ARRAY_SIZE_X; x++)
arrayIndexX[x] = x / 10.0 ;
//----
for (y = 0 ; y < ARRAY_SIZE_Y; y++)
arrayIndexY[y] = y / 10.0 ;
//----
for (x = 0 ; x < ARRAY_SIZE_X; x++)
for (y = 0 ; y < ARRAY_SIZE_Y; y++)
arrayZ[x,y] = MathSin (arrayIndexX[x] + arrayIndexY[y]);
GenerateCsv( "test.csv" , ARRAY_SIZE_X, ARRAY_SIZE_Y, arrayIndexX, arrayIndexY, arrayZ ); // 'arrayZ' - parameter conversion not allowed
//----
return ( 0 );
}
CAppDialog 클래스를 사용하여 만든 패널의 색상을 변경하려면 어떻게 해야 합니까?
return ( false );
당신은 이미 그것을 가져갔다. 그곳에서는 모든 것이 어떻게 이루어지나요? 안보이고 모바일로 작성중입니다.
방해해서 미안해
//+------------------------------------------------------------------+
//| start |
//+------------------------------------------------------------------+
int start()
{
а надо
//+------------------------------------------------------------------+//| start |
//+------------------------------------------------------------------+
int OnStart
{
그러나 파일은 요청된 데이터가 아닌
결과 - 하나의 열이 17행으로 채워짐 부울 true
StringSetChar - 처음에 cursed 문자열 이 있는 줄이 있습니다.
부울 로 변경 StringSetCharacter - 이 때문에 부울 값을 제공합니다.
//| PrepareString |
//+------------------------------------------------------------------+
string PrepareString( string s)
{
bool exit = false ;
int index = 0 ;
string str = s;
//----
while (!exit)
{
index = StringFind (str, "." , index);
if (index > - 1 )
str = StringSetChar (str, index, ',' );
else
exit = true ;
}
return (str);
}