초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 730 1...723724725726727728729730731732733734735736737...1503 새 코멘트 Vitaly Muzichenko 2017.02.06 11:22 #7291 Artyom Trishkin : 바[] 가능하시면 코드를 보여주세요. Vasiliy Sokolov 2017.02.06 11:35 #7292 Vitaly Muzichenko : Bars 라고 불리는 컴파일러는 세상이 의미하는 바를 꾸짖었습니다. 이 디자인을 테스트했습니까? 아니면 작동해야 한다고 가정했습니까? 아니면 제가 뭔가 잘못하고 있습니까? 네, 제 실수입니다. 이름 막대. 일반적으로 아이디어는 변수에 표현 가능한 이름을 부여하는 것이므로 추가 변수를 만들 필요가 없으며 그 존재가 항상 정당화되는 것은 아닙니다. Vitaly Muzichenko 2017.02.06 13:21 #7293 Vasiliy Sokolov : 네, 제 실수입니다. 이름 막대. 일반적으로 아이디어는 변수에 표현 가능한 이름을 부여하는 것이므로 추가 변수를 만들 필요가 없으며 그 존재가 항상 정당화되는 것은 아닙니다. 나는 무언가를 표현하기 위해 호출한 것이 아니라 작업할 때 코드를 단축하기 위해 호출했습니다. if (open1<close1 && close2>close3 && close1>close2 && 글쎄, 같은 맥락에서 더 나아가, 그렇지 않으면 - 선의 길이가 증가합니다 설명해주셔서 감사합니다! Sergey Gritsay 2017.02.06 14:39 #7294 Vitaly Muzichenko : 나는 무언가를 표현하기 위해 호출한 것이 아니라 작업할 때 코드를 단축하기 위해 호출했습니다. if (open1<close1 && close2>close3 && close1>close2 && 글쎄, 같은 맥락에서 더 나아가, 그렇지 않으면 - 선의 길이가 증가합니다 설명해주셔서 감사합니다! 코드를 최소한으로 유지하려면 데이터 배열을 직접 참조하십시오. //+------------------------------------------------------------------+ //| test09.mq5 | //| Sergey Gritsay | //| https://www.mql5.com/ru/users/sergey1294 | //+------------------------------------------------------------------+ #property copyright "Sergey Gritsay" #property link "https://www.mql5.com/ru/users/sergey1294" #property version "1.00" MqlRates bars[]; // массив для хранения данных цен OHLC int start_bar= 0 ; // с какого бара копируем int count_bar=4; // сколько баров копируем //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit () { //--- ArraySetAsSeries (bars, true ); //--- return ( INIT_SUCCEEDED ); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit ( const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick () { //--- if ( CopyRates ( Symbol (), PERIOD_CURRENT , start_bar, count_bar, bars)<count_bar) return ; if (bars[ 1 ].open<bars[ 1 ].close && bars[ 2 ].close>bars[ 3 ].close && bars[ 1 ].close>bars[ 2 ].close) { } } //+------------------------------------------------------------------+ ... Questions from Beginners MQL5 Urgent! Metatrader5 Alert problem! Questions from Beginners MQL4 hold_fast 2017.02.07 09:47 #7295 안녕하세요! Expert Advisor를 언로드(삭제)할 때 배치된 주문 및 열린 위치 를 삭제하는 위치와 방법은 무엇입니까? 쉬운 경우 예를 공유하십시오. 고맙습니다. Vladimir M. 2017.02.08 10:59 #7296 고문 중 한 명이 이상한 말을 하고 있습니다. 어드바이저는 정상적으로 테스트되며 "단일 테스트 시작"을 클릭하면 처음으로 하나의 단일 테스트만 실행됩니다. 또한 단일 테스트를 클릭하거나 최적화에서 라인을 클릭하면 로그에 다음이 표시됩니다. 2017.02.08 13:31:05.165 테스터는 합격에 대한 입력을 얻을 수 없습니다 4234087422336 2017.02.08 13:31:34.829 테스터는 합격에 대한 입력을 얻을 수 없습니다 4076312468706 2017.02.08 13:31:47.973 테스터가 1004506640527 합격에 대한 입력을 받을 수 없습니다. 나머지 어드바이저는 정상적으로 작동합니다. 뭐가 될수 있었는지? Questions from Beginners MQL5 오류, 버그, 질문 ASCTrend 시스템 Mikhail Toptunov 2017.02.08 13:57 #7297 여러분, 저는 10000 * 10000의 거대한 행렬을 쓰고 있습니다 if (count== 0 ) { //--- запишем файл ResetLastError (); int handle= FileOpen (path, FILE_READ | FILE_WRITE | FILE_BIN ); //--- if (handle!= INVALID_HANDLE ) { for ( int z=ARRAY_SIZE_Y; z> 0 ; z--) // Перебор по барам, колонка Y { for ( int q= 0 ; q<ARRAY_SIZE_X; q++) // Перебор по периоду, колонка X { arra[q]=sm.d[q].m[nBar-z]; // M(I) SMA } //--- запишем данные массива в конец файла FileTell IsFileLineEnded FileSeek (handle, 0 , SEEK_END ); FileWriteArray (handle,arra); } FileClose (handle); } else Print ( "Failed to open the file, error " , GetLastError (), " handle " ,handle); //--- count= 1 ; } 이 알고리즘이 속도 면에서 효율적이라고 생각하십니까? 1000 * 1000 행렬의 경우 속도가 몇 초이므로 10000 * 10000으로 증가하면 시스템이 시작됩니다. Questions from Beginners MQL5 Any rookie question, so 포럼을 어지럽히 지 않도록 Alexey Viktorov 2017.02.08 14:16 #7298 Top2n : 여러분, 저는 10000 * 10000의 거대한 행렬을 쓰고 있습니다 if (count== 0 ) { //--- запишем файл ResetLastError (); int handle= FileOpen (path, FILE_READ | FILE_WRITE | FILE_BIN ); //--- if (handle!= INVALID_HANDLE ) { for ( int z=ARRAY_SIZE_Y; z> 0 ; z--) // Перебор по барам, колонка Y { for ( int q= 0 ; q<ARRAY_SIZE_X; q++) // Перебор по периоду, колонка X { arra[q]=sm.d[q].m[nBar-z]; // M(I) SMA } //--- запишем данные массива в конец файла FileTell IsFileLineEnded FileSeek (handle, 0 , SEEK_END ); FileWriteArray (handle,arra); } FileClose (handle); } else Print ( "Failed to open the file, error " , GetLastError (), " handle " ,handle); //--- count= 1 ; } 이 알고리즘이 속도 면에서 효율적이라고 생각하십니까? 1000 * 1000 행렬의 경우 속도가 몇 초이므로 10000 * 10000으로 증가하면 시스템이 시작됩니다.4차원 배열 만 허용되는 경우 이러한 행렬을 얻을 수 있는 방법은 무엇입니까? 뭔가 헷갈리시죠? Документация по MQL5: Операции с массивами www.mql5.com Операции с массивами - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Vitalie Postolache 2017.02.08 22:20 #7299 Alexey Viktorov : 4차원 배열 만 허용되는 경우 이러한 행렬을 얻을 수 있는 방법은 무엇입니까? 뭔가 헷갈리시죠? 10000 x 10000은 2차원 아닌가요? double arr[ 10000 ][ 10000 ]; 등... Mikhail Toptunov 2017.02.08 23:29 #7300 Alexey Viktorov : 4차원 배열 만 허용되는 경우 이러한 행렬을 얻을 수 있는 방법은 무엇입니까? 뭔가 헷갈리시죠? 글쎄요, 그것은 2차원입니다. 어떻게 든 저는 그것을 그렇게 말하는 것이 아닙니다. 분명히 행렬이 아니라 배열입니다. 행렬이 다차원성을 의미합니까? 1...723724725726727728729730731732733734735736737...1503 새 코멘트 사유: 취소 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
바[]
Bars 라고 불리는 컴파일러는 세상이 의미하는 바를 꾸짖었습니다. 이 디자인을 테스트했습니까? 아니면 작동해야 한다고 가정했습니까? 아니면 제가 뭔가 잘못하고 있습니까?
네, 제 실수입니다. 이름 막대. 일반적으로 아이디어는 변수에 표현 가능한 이름을 부여하는 것이므로 추가 변수를 만들 필요가 없으며 그 존재가 항상 정당화되는 것은 아닙니다.
나는 무언가를 표현하기 위해 호출한 것이 아니라 작업할 때 코드를 단축하기 위해 호출했습니다.
글쎄, 같은 맥락에서 더 나아가, 그렇지 않으면 - 선의 길이가 증가합니다
설명해주셔서 감사합니다!
나는 무언가를 표현하기 위해 호출한 것이 아니라 작업할 때 코드를 단축하기 위해 호출했습니다.
글쎄, 같은 맥락에서 더 나아가, 그렇지 않으면 - 선의 길이가 증가합니다
설명해주셔서 감사합니다!
코드를 최소한으로 유지하려면 데이터 배열을 직접 참조하십시오.
//| test09.mq5 |
//| Sergey Gritsay |
//| https://www.mql5.com/ru/users/sergey1294 |
//+------------------------------------------------------------------+
#property copyright "Sergey Gritsay"
#property link "https://www.mql5.com/ru/users/sergey1294"
#property version "1.00"
MqlRates bars[]; // массив для хранения данных цен OHLC
int start_bar= 0 ; // с какого бара копируем
int count_bar=4; // сколько баров копируем
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit ()
{
//---
ArraySetAsSeries (bars, true );
//---
return ( INIT_SUCCEEDED );
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
{
//---
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick ()
{
//---
if ( CopyRates ( Symbol (), PERIOD_CURRENT , start_bar, count_bar, bars)<count_bar) return ;
if (bars[ 1 ].open<bars[ 1 ].close && bars[ 2 ].close>bars[ 3 ].close && bars[ 1 ].close>bars[ 2 ].close)
{
}
}
//+------------------------------------------------------------------+
안녕하세요!
Expert Advisor를 언로드(삭제)할 때 배치된 주문 및 열린 위치 를 삭제하는 위치와 방법은 무엇입니까? 쉬운 경우 예를 공유하십시오.
고맙습니다.
고문 중 한 명이 이상한 말을 하고 있습니다. 어드바이저는 정상적으로 테스트되며 "단일 테스트 시작"을 클릭하면 처음으로 하나의 단일 테스트만 실행됩니다. 또한 단일 테스트를 클릭하거나 최적화에서 라인을 클릭하면 로그에 다음이 표시됩니다.
2017.02.08 13:31:05.165 테스터는 합격에 대한 입력을 얻을 수 없습니다 4234087422336
2017.02.08 13:31:34.829 테스터는 합격에 대한 입력을 얻을 수 없습니다 4076312468706
2017.02.08 13:31:47.973 테스터가 1004506640527 합격에 대한 입력을 받을 수 없습니다.
나머지 어드바이저는 정상적으로 작동합니다. 뭐가 될수 있었는지?
여러분, 저는 10000 * 10000의 거대한 행렬을 쓰고 있습니다
{
//--- запишем файл
ResetLastError ();
int handle= FileOpen (path, FILE_READ | FILE_WRITE | FILE_BIN );
//---
if (handle!= INVALID_HANDLE )
{
for ( int z=ARRAY_SIZE_Y; z> 0 ; z--) // Перебор по барам, колонка Y
{
for ( int q= 0 ; q<ARRAY_SIZE_X; q++) // Перебор по периоду, колонка X
{
arra[q]=sm.d[q].m[nBar-z]; // M(I) SMA
}
//--- запишем данные массива в конец файла FileTell IsFileLineEnded
FileSeek (handle, 0 , SEEK_END );
FileWriteArray (handle,arra);
}
FileClose (handle);
}
else
Print ( "Failed to open the file, error " , GetLastError (), " handle " ,handle);
//---
count= 1 ;
}
이 알고리즘이 속도 면에서 효율적이라고 생각하십니까?
1000 * 1000 행렬의 경우 속도가 몇 초이므로 10000 * 10000으로 증가하면 시스템이 시작됩니다.
여러분, 저는 10000 * 10000의 거대한 행렬을 쓰고 있습니다
{
//--- запишем файл
ResetLastError ();
int handle= FileOpen (path, FILE_READ | FILE_WRITE | FILE_BIN );
//---
if (handle!= INVALID_HANDLE )
{
for ( int z=ARRAY_SIZE_Y; z> 0 ; z--) // Перебор по барам, колонка Y
{
for ( int q= 0 ; q<ARRAY_SIZE_X; q++) // Перебор по периоду, колонка X
{
arra[q]=sm.d[q].m[nBar-z]; // M(I) SMA
}
//--- запишем данные массива в конец файла FileTell IsFileLineEnded
FileSeek (handle, 0 , SEEK_END );
FileWriteArray (handle,arra);
}
FileClose (handle);
}
else
Print ( "Failed to open the file, error " , GetLastError (), " handle " ,handle);
//---
count= 1 ;
}
이 알고리즘이 속도 면에서 효율적이라고 생각하십니까?
1000 * 1000 행렬의 경우 속도가 몇 초이므로 10000 * 10000으로 증가하면 시스템이 시작됩니다.
뭔가 헷갈리시죠?
4차원 배열 만 허용되는 경우 이러한 행렬을 얻을 수 있는 방법은 무엇입니까?
뭔가 헷갈리시죠?
10000 x 10000은 2차원 아닌가요?
등...
4차원 배열 만 허용되는 경우 이러한 행렬을 얻을 수 있는 방법은 무엇입니까?
뭔가 헷갈리시죠?