초보자의 질문 MQL4 MT4 MetaTrader 4 - 페이지 202 1...195196197198199200201202203204205206207208209...260 새 코멘트 Vladimir Simakov 2020.05.11 10:58 #2011 Yurij Kozhevnikov : = 대체 원리를 제대로 이해하면 그런 것 같습니다. 중괄호 뒤에 세미콜론을 추가합니다. 그리고 지금 다른 것이 무엇을 가리키는지는 분명하지 않습니다. 안타깝게도 매크로 확장을 자동화하여 무슨 일이 일어나는지 확인하는 쉬운 방법이 없는 것 같습니다. 자신의 스크립트를 휘젓지 않는 한. 고맙습니다! 매크로에서 while 뒤에 세미콜론이 없는 것은 당연합니다. 매크로는 좋은 것이지만 선과 악의 경계는 여성의 경우보다 훨씬 얇습니다.))) 매크로는 매우 매우 조심해야 합니다. 그리고 예, 제 예에서는 ';'가 아니라 ;을 제거한 후 매크로에 있는 if와 관련이 있는 else입니다. 저는 매크로를 잘 다룰 줄 압니다. 그래서 당신과 같은 경우에는 매크로를 사용하기로 맹세한 지 1.5년이 지났습니다. 더 최적입니다. inline bool CheckRead(){ ... } if (!CheckRead()) return ; Yurij Kozhevnikov 2020.05.11 11:11 #2012 그것은 인라인에 관한 것입니다. 여기에서 아무 것도 찾지 못했습니다. 나는 C++를 모른다. Viktor Timofeev 2020.05.12 18:13 #2013 안녕하세요! 도와주세요! 주문을 열고 수정하는 매우 간단한 코드가 있습니다. 시도 사이에 약간의 지연이 있는 루프에 OrderSend , OrderSelect 및 OrderModify 함수를 넣습니다. 통신 오류 등을 최소화하기 위해 다음과 같은 오해가 발생합니다. 주문이 정상적으로 열리면 StopLoss가 성공적으로 수정되고 TakeProfit이 성공적으로 수정됩니다. 그러나 TP를 설정할 때 StopLoss는 0으로 재설정됩니다. 나는 그 이유를 이해할 수 없다. 다음은 코드의 해당 부분입니다. 보내기 = 5; //주문을 위한 최대 시도 횟수 틱=0; 센드셋=0; //카운터 시도 동안(!틱 && sendset<=보내기) { tick=OrderSend(Symbol(),OP_SELL,NormalizeDouble(lot,2),Bid,150,0.0,0.0,komm,MagNum,0,Yellow); 센드셋++; 수면(1000); // 다음 시도까지 1초 지연 } 선택 = 5; //주문을 선택하기 위한 최대 시도 횟수 slschet=0; //주문 선택 시도 횟수 동안(!OrderSelect(tick,SELECT_BY_TICKET) && slschet<=select) { 슬스케 ++; 수면(500); // 다음 시도까지 0.5초 지연 } if(slschet<select) //최대 시도 횟수보다 적은 횟수는 주문 선택이 성공했음을 의미합니다. { modify = 5;//주문을 수정하려는 최대 시도 횟수 mdset=0; 동안(!OrderModify(tick,OrderOpenPrice(),NormalizeDouble(SL,Digits),OrderTakeProfit(),0,Yellow) && mdschet<=수정) { mdschet++; 수면(500); // 다음 시도까지 0.5초 지연 } *여기서 모든 것이 훌륭합니다 - SL이 설치됨 mdset=0; //TP 변경 전 카운터 리셋 동안(!OrderModify(tick,OrderOpenPrice(),OrderStopLoss(),NormalizeDouble(TP,Digits),0,Yellow) && mdschet<=수정) { mdschet++; 수면(500); } } *여기서 TP는 정상적으로 설정되지만 SL은 이미 0.0과 같습니다. 즉, OrderStopLoss()는 0.0과 같습니다. 순서의 선택은 변경되지 않았지만. SL과 TP 설치 사이에 OrderSelect를 다시 추가하면 모든 것이 작동하는 것 같습니다. 그러나 그것은 논리를 무시합니다. 문제에 대해 도움을 주셔서 미리 감사드립니다. Questions from Beginners MQL4 [경고, 주제 닫힘!] 포럼을 코딩하는 방법? Oleg_Ko 2020.05.12 23:38 #2014 안녕하세요! 동적 배열 의 크기를 변경하는 방법을 알아내도록 도와주세요. 배열을 설정했다고 가정해 보겠습니다. int DB[][ 8 ]; 또한 루프의 첫 번째 서브루틴에서 여러 번 가능합니다(여기에는 질문이 없습니다. 지금까지는 의도한 대로 작동함). ushort i = 0 ; ArrayResize (DB,i+ 1 ); 다음 서브루틴에서는 루프의 첫 번째 차원에 요소를 추가합니다. 얼마인지 알 수 없습니다. 차원을 미리 선언하는 것보다 이것이 느리다는 것을 알고 있습니다. 그러나 연간 최대 500개의 추가가 날씨를 만들지 않을 것이라고 생각합니다. 문제는 이 서브루틴에서 배열의 기존 크기를 찾는 방법입니다. 기본 값으로 사용하고 하나의 새 값을 추가합니다. ArraySize()를 가져 와서 8로 나누시겠습니까? 아니면 더 적합한 기능이 있습니까? 미리 감사드립니다! Artyom Trishkin 2020.05.13 06:37 #2015 Oleg_Ko : 안녕하세요! 동적 배열 의 크기를 변경하는 방법을 알아내도록 도와주세요. 배열을 설정했다고 가정해 보겠습니다. 또한 루프의 첫 번째 서브루틴에서 여러 번 가능합니다(여기에는 질문이 없습니다. 지금까지는 의도한 대로 작동함). 다음 서브루틴에서는 루프의 첫 번째 차원에 요소를 추가합니다. 얼마인지는 미리 알 수 없습니다. 차원을 미리 선언하는 것보다 이것이 느리다는 것을 알고 있습니다. 그러나 연간 최대 500개의 추가가 날씨를 만들지 않을 것이라고 생각합니다. 문제는 이 서브루틴에서 배열의 기존 크기를 찾는 방법입니다. 기본 값으로 사용하고 하나의 새 값을 추가합니다. ArraySize()를 가져 와서 8로 나누시겠습니까? 아니면 더 적합한 기능이 있습니까? 미리 감사드립니다! 배열 범위() Документация по MQL5: Операции с массивами / ArrayRange www.mql5.com Операции с массивами / ArrayRange - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 Oleg_Ko 2020.05.13 14:43 #2016 Artyom Trishkin : 배열 범위() 아르템, 고마워. radywek 2020.05.14 04:36 #2017 안녕하세요. 나는 아주 오랫동안 MT4에서 거래하지 않았고, 다시 시도하기로 결정했습니다. 이전에는 스크립트(첨부)를 사용했지만 지금은 시작되지 않습니다. 무엇이 잘못되었는지 확인하십시오. 파일: RiskAdvisor.mq4 12 kb Nauris Zukas 2020.05.15 11:39 #2018 Nauris Zukas : 안녕하세요! 임의의 기간에 CopyHigh 배열 요소의 수 를 즉시 알 수 있는 방법이 있습니까? 나는 스스로 대답할 것이다. 아마도 검색 엔진을 통해 누군가가 그 질문에 걸려 넘어질 것이다. SeriesInfoInteger (symbol_name,timeframe, SERIES_BARS_COUNT ); Artyom Trishkin 2020.05.15 18:07 #2019 Nauris Zukas : 나는 스스로 대답할 것이다. 아마도 검색 엔진을 통해 누군가가 그 질문에 걸려 넘어질 것이다. 더 많은 막대(), iBar() Nauris Zukas 2020.05.16 09:09 #2020 Artyom Trishkin : 더 많은 막대(), iBar() Bars()를 사용하면 특정 기간 의 배열 요소 수를 알 수 없고 현재 차트에서만 알 수 있습니다. 1...195196197198199200201202203204205206207208209...260 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
=
대체 원리를 제대로 이해하면 그런 것 같습니다.
중괄호 뒤에 세미콜론을 추가합니다. 그리고 지금 다른 것이 무엇을 가리키는지는 분명하지 않습니다.
안타깝게도 매크로 확장을 자동화하여 무슨 일이 일어나는지 확인하는 쉬운 방법이 없는 것 같습니다. 자신의 스크립트를 휘젓지 않는 한.
고맙습니다! 매크로에서 while 뒤에 세미콜론이 없는 것은 당연합니다.
매크로는 좋은 것이지만 선과 악의 경계는 여성의 경우보다 훨씬 얇습니다.))) 매크로는 매우 매우 조심해야 합니다. 그리고 예, 제 예에서는 ';'가 아니라 ;을 제거한 후 매크로에 있는 if와 관련이 있는 else입니다.
저는 매크로를 잘 다룰 줄 압니다. 그래서 당신과 같은 경우에는 매크로를 사용하기로 맹세한 지 1.5년이 지났습니다. 더 최적입니다.
그것은 인라인에 관한 것입니다. 여기에서 아무 것도 찾지 못했습니다.
나는 C++를 모른다.
안녕하세요! 도와주세요!
주문을 열고 수정하는 매우 간단한 코드가 있습니다. 시도 사이에 약간의 지연이 있는 루프에 OrderSend , OrderSelect 및 OrderModify 함수를 넣습니다. 통신 오류 등을 최소화하기 위해
다음과 같은 오해가 발생합니다. 주문이 정상적으로 열리면 StopLoss가 성공적으로 수정되고 TakeProfit이 성공적으로 수정됩니다. 그러나 TP를 설정할 때 StopLoss는 0으로 재설정됩니다. 나는 그 이유를 이해할 수 없다.
다음은 코드의 해당 부분입니다.
보내기 = 5; //주문을 위한 최대 시도 횟수
틱=0;
센드셋=0; //카운터 시도
동안(!틱 && sendset<=보내기)
{
tick=OrderSend(Symbol(),OP_SELL,NormalizeDouble(lot,2),Bid,150,0.0,0.0,komm,MagNum,0,Yellow);
센드셋++;
수면(1000); // 다음 시도까지 1초 지연
}
선택 = 5; //주문을 선택하기 위한 최대 시도 횟수
slschet=0; //주문 선택 시도 횟수
동안(!OrderSelect(tick,SELECT_BY_TICKET) && slschet<=select)
{
슬스케 ++;
수면(500); // 다음 시도까지 0.5초 지연
}
if(slschet<select) //최대 시도 횟수보다 적은 횟수는 주문 선택이 성공했음을 의미합니다.
{
modify = 5;//주문을 수정하려는 최대 시도 횟수
mdset=0;
동안(!OrderModify(tick,OrderOpenPrice(),NormalizeDouble(SL,Digits),OrderTakeProfit(),0,Yellow)
&& mdschet<=수정)
{
mdschet++;
수면(500); // 다음 시도까지 0.5초 지연
}
*여기서 모든 것이 훌륭합니다 - SL이 설치됨
mdset=0; //TP 변경 전 카운터 리셋
동안(!OrderModify(tick,OrderOpenPrice(),OrderStopLoss(),NormalizeDouble(TP,Digits),0,Yellow)
&& mdschet<=수정)
{
mdschet++;
수면(500);
}
}
*여기서 TP는 정상적으로 설정되지만 SL은 이미 0.0과 같습니다. 즉, OrderStopLoss()는 0.0과 같습니다.
순서의 선택은 변경되지 않았지만.
SL과 TP 설치 사이에 OrderSelect를 다시 추가하면 모든 것이 작동하는 것 같습니다. 그러나 그것은 논리를 무시합니다.
문제에 대해 도움을 주셔서 미리 감사드립니다.
안녕하세요!
동적 배열 의 크기를 변경하는 방법을 알아내도록 도와주세요.
배열을 설정했다고 가정해 보겠습니다.
또한 루프의 첫 번째 서브루틴에서 여러 번 가능합니다(여기에는 질문이 없습니다. 지금까지는 의도한 대로 작동함).
다음 서브루틴에서는 루프의 첫 번째 차원에 요소를 추가합니다. 얼마인지 알 수 없습니다. 차원을 미리 선언하는 것보다 이것이 느리다는 것을 알고 있습니다. 그러나 연간 최대 500개의 추가가 날씨를 만들지 않을 것이라고 생각합니다.
문제는 이 서브루틴에서 배열의 기존 크기를 찾는 방법입니다. 기본 값으로 사용하고 하나의 새 값을 추가합니다.
ArraySize()를 가져 와서 8로 나누시겠습니까? 아니면 더 적합한 기능이 있습니까?
미리 감사드립니다!
안녕하세요!
동적 배열 의 크기를 변경하는 방법을 알아내도록 도와주세요.
배열을 설정했다고 가정해 보겠습니다.
또한 루프의 첫 번째 서브루틴에서 여러 번 가능합니다(여기에는 질문이 없습니다. 지금까지는 의도한 대로 작동함).
다음 서브루틴에서는 루프의 첫 번째 차원에 요소를 추가합니다. 얼마인지는 미리 알 수 없습니다. 차원을 미리 선언하는 것보다 이것이 느리다는 것을 알고 있습니다. 그러나 연간 최대 500개의 추가가 날씨를 만들지 않을 것이라고 생각합니다.
문제는 이 서브루틴에서 배열의 기존 크기를 찾는 방법입니다. 기본 값으로 사용하고 하나의 새 값을 추가합니다.
ArraySize()를 가져 와서 8로 나누시겠습니까? 아니면 더 적합한 기능이 있습니까?
미리 감사드립니다!
배열 범위()
배열 범위()
안녕하세요.
나는 아주 오랫동안 MT4에서 거래하지 않았고, 다시 시도하기로 결정했습니다. 이전에는 스크립트(첨부)를 사용했지만 지금은 시작되지 않습니다. 무엇이 잘못되었는지 확인하십시오.
안녕하세요!
임의의 기간에 CopyHigh 배열 요소의 수 를 즉시 알 수 있는 방법이 있습니까?
나는 스스로 대답할 것이다. 아마도 검색 엔진을 통해 누군가가 그 질문에 걸려 넘어질 것이다.
나는 스스로 대답할 것이다. 아마도 검색 엔진을 통해 누군가가 그 질문에 걸려 넘어질 것이다.
더 많은 막대(), iBar()
Bars()를 사용하면 특정 기간 의 배열 요소 수를 알 수 없고 현재 차트에서만 알 수 있습니다.