글쎄, 그것은 두 개의 선이있는 하나의 지표이기 때문입니다. 하나의 MA 라인만 그리려면 Envelopes와 동일한 매개변수로 이동 평균을 사용합니다. MA 값에만 위쪽 라인의 Deviation*Point() 값을 추가하고 아래쪽 라인의 Deviation*Point() 값을 빼면 됩니다.
Для создателей индикаторов и экспертов всегда был актуален вопрос написания экономичного кода с точки зрения времени выполнения. Можно подойти к решению этой задачи с разных сторон. Из этой обширной темы в данной статье будет затронут, казалось бы уже решенный вопрос: проверка появления нового бара. Это достаточно популярный способ ограничения...
글쎄, 그것은 두 개의 선이있는 하나의 지표이기 때문입니다. 하나의 MA 라인만 그리려면 Envelopes와 동일한 매개변수로 이동 평균을 사용합니다. MA 값에만 위쪽 라인의 Deviation*Point() 값을 추가하고 아래쪽 라인의 Deviation*Point() 값을 빼면 됩니다.
흥미로운 솔루션, 감사합니다!
그러나 이것이 Envelopes가 아니라 Bollinger Bands라면 표준편차를 계산하는 공식을 규정해야 합니까? 물론 할 수 있지만 MQL4와 같은 간단한 솔루션은 실제로 없는 것입니까?
iEnvelopes
Возвращает значение технического индикатора Envelopes.
doubleiEnvelopes (
string symbol, // имя символаint timeframe, // таймфреймint ma_period, // периодint ma_method, // метод усредненияint ma_shift, // сдвиг среднейint applied_price, // тип ценыdouble deviation, // отклонение (в процентах)int mode, // индекс линииint shift // сдвиг
);
이 표시기를 만드는 예("터미널 데이터 디렉터리"\MQL5\Indicators\ MyInd \ 폴더에 있음):
...
int handle_iMA_Custom; // variable for storing the handle of the iMA indicator //+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit ()
{
...
//--- create handle of the Custom indicator "Custom Moving Average Levels"
handle_iMA_Custom= iCustom ( Symbol (), Period (), " MyInd \\Custom Moving Average Levels" ,
ma_period,
ma_shift,
ma_method,
100 ,
- 100 );
//--- if the handle is not created if (handle_iMA_Custom== INVALID_HANDLE )
{
//--- tell about the failure and output the error code PrintFormat ( "Failed to create handle of the iMA indicator for the symbol %s/%s, error code %d" ,
Symbol (),
EnumToString ( Period ()),
GetLastError ());
//--- the indicator is stopped early return ( INIT_FAILED );
}
ChartIndicatorAdd ( 0 , 0 ,handle_iMA_Custom);
//---return ( INIT_SUCCEEDED );
}
따라서 iCustom을 통해 호출된 표시기의 경우 - 먼저 표시기 핸들을 생성합니다(OnInit()에서 핸들을 한 번 생성한다는 사실을 잊지 마십시오).
비탈리, 비탈리!))
내가 당신에게 얼마나 감사한지 당신은 모릅니다!
이것은 머리와 함께. 물론 지금 모든 것을 시도해야하지만 이것은 이미 사소한 일입니다.
행복이 이렇게 가까이 있을 수 있는지 몰랐어요!)) 감사합니다! 어때요 .. 난 당신을 위해, 당신을 위해 더 이상 당신을 위해!
F1은 종종 포럼보다 빠르게 많은 문제를 해결합니다.
F1을 사용하여 내 질문 에 대한 답변을 찾을 수 없습니다.
글쎄, 그것은 두 개의 선이있는 하나의 지표이기 때문입니다. 하나의 MA 라인만 그리려면 Envelopes와 동일한 매개변수로 이동 평균을 사용합니다. MA 값에만 위쪽 라인의 Deviation*Point() 값을 추가하고 아래쪽 라인의 Deviation*Point() 값을 빼면 됩니다.
F1은 종종 포럼보다 빠르게 많은 문제를 해결합니다.
당신은 거래가 무엇인지 이해합니다 .. Smart to smart sent ..
그리고 저는 Forex의 광대한 영역을 따라 이동합니다.. 이제 저는 이 포럼에 참여하게 되었습니다.
F1은 일반적으로 버튼이 그렇죠? 조언 해주셔서 감사합니다. 밀어보도록 하겠습니다.
모두를 환영합니다! 30분 동안 포럼에서 " new bar "를 검색했는데 슬프게도 포럼 검색이 내 자신의 이해에 따라 작동한다는 것을 발견했습니다...
한 시간 프레임에서 작동하는 표시기에 대한 새 막대를 감지하는 측면에서 mql5의 최신 빌드에서 현재 어떤 코드가 사용 중인지 알려주세요.
추신: 검색하여 TimeframesFlags를 찾았 습니다. .. 번거로운 솔루션이지만 보편적입니다.
미리 감사합니다!
https://www.mql5.com/ru/articles/159
글쎄, 그것은 두 개의 선이있는 하나의 지표이기 때문입니다. 하나의 MA 라인만 그리려면 Envelopes와 동일한 매개변수로 이동 평균을 사용합니다. MA 값에만 위쪽 라인의 Deviation*Point() 값을 추가하고 아래쪽 라인의 Deviation*Point() 값을 빼면 됩니다.
흥미로운 솔루션, 감사합니다!
그러나 이것이 Envelopes가 아니라 Bollinger Bands라면 표준편차를 계산하는 공식을 규정해야 합니까? 물론 할 수 있지만 MQL4와 같은 간단한 솔루션은 실제로 없는 것입니까?
저것들. 매개변수
줄 번호를 설정합니다....
그러나 그러한 지표는 사용자 정의 이동 평균 수준 에 적합하지 않습니까?
MQL5 코드에서 두 레벨 값을 설정할 수 있는 이동 평균 표시기:
그러나 그러한 지표는 사용자 정의 이동 평균 수준 에 적합하지 않습니까?
MQL5 코드에서 두 레벨 값을 설정할 수 있는 이동 평균 표시기:
도와주셔서 대단히 감사합니다. 하지만 저는 MQL5를 배우는 과정에 있습니다. 그래서 iCustom 을 사용하여 여러 표시줄이 있는 이미 내장된 표시기에서 필요한 값을 "추출"하려고 합니다 .
아직 해보진 못했는데 좀 쉽네요.
많은 도움을 주셔서 감사합니다. 하지만 저는 MQL5를 배우는 과정에 있습니다. 그래서 iCustom 을 사용하여 여러 표시줄이 있는 이미 내장된 표시기에서 필요한 값을 "추출"하려고 합니다 .
아직 해보진 못했는데 좀 쉽네요.
iCustom을 사용하면 모든 것이 매우 간단합니다. 예: 사용자 정의 이동 평균 수준 코드에서 있다
이 표시기를 만드는 예("터미널 데이터 디렉터리"\MQL5\Indicators\ MyInd \ 폴더에 있음):
따라서 iCustom을 통해 호출된 표시기의 경우 - 먼저 표시기 핸들을 생성합니다(OnInit()에서 핸들을 한 번 생성한다는 사실을 잊지 마십시오).iCustom을 사용하면 모든 것이 매우 간단합니다. 예: 사용자 정의 이동 평균 수준 코드에서 있다
이 표시기를 만드는 예("터미널 데이터 디렉터리"\MQL5\Indicators\ MyInd \ 폴더에 있음):
따라서 iCustom을 통해 호출된 표시기의 경우 - 먼저 표시기 핸들을 생성합니다(OnInit()에서 핸들을 한 번 생성한다는 사실을 잊지 마십시오).솔직히, 나는 아무것도 이해하지 못했습니다. Close[2], Close[1]에 있는 표시기의 위쪽 라인 값이 필요합니다. 그게 전부입니다.
표시기 코드에 "맞춤"되지 않도록 모든 표시기에서 이러한 값을 추출하는 방법.