ADX는 실제 범위 (Max(High,PreviousClose)-Min(Low,PreviousClose)라고 하는 것을 사용하며 이것이 ADX 계산의 기초입니다.
High, Low, Close 값이 필요하기 때문에 어레이에 적용할 수 없으며, 일반적으로 필요한 가격이 있는 경우 해당 인디케이터를 어레이에 적용해야 합니다. price 매개변수 가 없으면 배열에 적용할 수 없다는 것이 거의 확실합니다(처음에 표시기가 가격에 대해 작동한다고 가정).
[lang=it]안녕하세요, 별도의 창에서 atr과 이동 평균을 작성하고 대역폭에 대해 동일한 것을 계산하는 사용자 지정 표시기 가 필요합니다. mql4에서 코드를 만들었고 MA를 계산하기 위해 IMAONARRAY를 사용했지만 표시기가 작동하지 않습니다. 누군가 나를 도울 수 있습니까???
k3rn3l: [lang=it]안녕하세요, 별도의 창에서 atr과 이동 평균을 작성하고 대역폭에 대해 동일한 것을 계산하는 사용자 지정 표시기가 필요합니다. mql4에서 코드를 만들었고 MA를 계산하기 위해 IMAONARRAY를 사용했지만 표시기가 작동하지 않습니다. 누군가 나를 도울 수 있습니까???
가격 배열에 지표 알고리즘을 적용하는 솔루션을 찾고 있습니다.
MQL4에서 일부 표시기는 iCCIOnArray, iBandsOnArray...와 같은 이 기능을 가지고 있습니다.
그러나 ADX와 같은 지표에는 그러한 기능이 없습니다.
미리 정의된 배열(따옴표 서버가 아님)에 지표 계산을 적용하는 방법에 대해 아는 사람이 있습니까?[lang=pl]주어진 지표가 어떻게 계산되는지 안다면 모든 것을 만들 수 있습니다:)
정확히 무엇이 필요한지 더 정확하게 설명해주세요
건배,
그르제식[/lang]
...
ADX는 실제 범위 (Max(High,PreviousClose)-Min(Low,PreviousClose)라고 하는 것을 사용하며 이것이 ADX 계산의 기초입니다.
High, Low, Close 값이 필요하기 때문에 어레이에 적용할 수 없으며, 일반적으로 필요한 가격이 있는 경우 해당 인디케이터를 어레이에 적용해야 합니다. price 매개변수 가 없으면 배열에 적용할 수 없다는 것이 거의 확실합니다(처음에 표시기가 가격에 대해 작동한다고 가정).
[lang=pl]주어진 지표가 어떻게 계산되는지 안다면 모든 것을 만들 수 있습니다:)
정확히 무엇이 필요한지 더 정확하게 설명해주세요
건배,
그르제식[/lang]Grzesiek 감사합니다.
나는 좋은 해결책을 찾고 있었다. 결국 최선의 해결책은 인디 코드를 전문가 코드에 삽입하는 것입니다.
어쨌든, 다른 사람이 나에게 다른 방법을 보여주지 않는 한 나는 이렇게 적용할 것입니다.
소스 파일이 있습니까? *.ex4 파일이 컴파일되어 소스 코드에 액세스할 수 없습니다.
문안 인사
요구
스타821
이것을 사용해보십시오
_____________________________________
몇 가지 설명 : 귀하가 게시한 것을 사용하지 않고 만들었습니다(귀하의 게시물에 첨부된 표시기에는 내 이름이 있지만 해당 버전은 내가 만든 것이 아니지만 그 표시기를 사용하지 않은 유일한 이유는 아닙니다). ...
문안 인사
믈라덴안녕 믈라덴
HMA 색상 nrp-indi 및 High-low 추세 인디에 대해 stc EA를 적용할 수 있습니까?...
나는 의사 코드를 작성했습니다 (* 전혀 코딩 할 수 없습니다 ... *):
************************************************** **********
외관:
많은#
HMA 기간
???.
...........................
반복하다:
지그재그 도트 색상을 가져옵니다(바 닫기).
HMA 트렌드 색상을 가져옵니다(바 닫기).
-------------------------------------------------- --------------
// 오픈 판매
마지막 지그재그 점 = 파란색 && HMA 추세 = 빨간색 -> 매도 티켓 열기(HMA 추세 색상당 한 번만)
열리지 않으면 매도 -> 3번 재시도
성공 알림 및 이메일이 없는 경우: 기호, TF, 시간에 대한 판매를 열 수 없습니다.
또 다른
// 오픈 바이
마지막 지그재그 점 = 빨간색 && HMA 추세 = 파란색 -> BUY 티켓 열기(HMA 추세 색상당 한 번만)
열 수 없는 경우 구매 -> 3번 재시도
성공 경고 및 이메일이 없는 경우: 기호, TF, 시간에 대한 구매를 열 수 없습니다.
-------------------------------------------------- ------------------
HMA 추세(빨간색)가 파란색으로 바뀌면 -> 매도종료, 10초 기다립니다. ;
HMA 추세(파란색)가 빨간색으로 변경되면 -> 닫기 매수, 10초 대기.
-------------------------------------------------- ------------------
금요일 오전 12시(GMT)에 모든 거래를 마감합니다...
************************************************** **************
약간의 패배가 있다는 것을 알고 있지만 그것은 나를 괴롭히지 않습니다 ...
나는 SL을 원하지 않는다...
문안 인사
카도
hma_color_nrp.ex4 high___low_trend.mq4
ATR + MA 및 대역폭 + MA
[lang=it]안녕하세요, 별도의 창에서 atr과 이동 평균을 작성하고 대역폭에 대해 동일한 것을 계산하는 사용자 지정 표시기 가 필요합니다. mql4에서 코드를 만들었고 MA를 계산하기 위해 IMAONARRAY를 사용했지만 표시기가 작동하지 않습니다. 누군가 나를 도울 수 있습니까???
테오코드 중 하나입니다..
감사해요
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
//---- input parameters
extern int AtrPeriod=14;
//---- buffers
double AtrBuffer[];
double TempBuffer[];
double MaBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name;
//---- 1 additional buffer used for counting.
IndicatorBuffers(2);
//---- indicator line
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,AtrBuffer);
SetIndexBuffer(1,TempBuffer);
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(2,MaBuffer);
//---- name for DataWindow and indicator subwindow label
short_name="ATR("+AtrPeriod+")";
IndicatorShortName(short_name);
SetIndexLabel(0,short_name);
//----
SetIndexDrawBegin(0,AtrPeriod);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Average True Range |
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=AtrPeriod) return(0);
//---- initial zero
if(counted_bars<1)
for(i=1;i<=AtrPeriod;i++) AtrBuffer=0.0;
//----
i=Bars-counted_bars-1;
while(i>=0)
{
double high=High;
double low =Low;
if(i==Bars-1) TempBuffer=high-low;
else
{
double prevclose=Close;
TempBuffer=MathMax(high,prevclose)-MathMin(low,prevclose);
}
i--;
}
//----
if(counted_bars>0) counted_bars--;
int limit=Bars-counted_bars;
for(i=0; i<limit; i++)
AtrBuffer=iMAOnArray(TempBuffer,Bars,AtrPeriod,0,MODE_SMA,i);
//----
double MyArray[];
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
ArrayResize( MyArray, limit);
ArraySetAsSeries(MyArray,true);
for(i=0; i<limit; i++)
{
MyArray = AtrBuffer;
}
for(i=0; i<limit; i++)
{
MaBuffer = iMAOnArray(MyArray,limit,10,0,MODE_SMA,i);
}
//----
return(0);
}
//+------------------------------------------------------------------+[/언어]
...
지금 사용해 보세요
[lang=it]안녕하세요, 별도의 창에서 atr과 이동 평균을 작성하고 대역폭에 대해 동일한 것을 계산하는 사용자 지정 표시기가 필요합니다. mql4에서 코드를 만들었고 MA를 계산하기 위해 IMAONARRAY를 사용했지만 표시기가 작동하지 않습니다. 누군가 나를 도울 수 있습니까???
테오코드 중 하나입니다..
감사해요
#property indicator_buffers 2
#property indicator_color1 Blue
#property indicator_color2 Red
//---- input parameters
extern int AtrPeriod=14;
//---- buffers
double AtrBuffer[];
double TempBuffer[];
double MaBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name;
//---- 1 additional buffer used for counting.
IndicatorBuffers(2);
//---- indicator line
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,AtrBuffer);
SetIndexBuffer(1,TempBuffer);
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(2,MaBuffer);
//---- name for DataWindow and indicator subwindow label
short_name="ATR("+AtrPeriod+")";
IndicatorShortName(short_name);
SetIndexLabel(0,short_name);
//----
SetIndexDrawBegin(0,AtrPeriod);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Average True Range |
//+------------------------------------------------------------------+
int start()
{
int i,counted_bars=IndicatorCounted();
//----
if(Bars<=AtrPeriod) return(0);
//---- initial zero
if(counted_bars<1)
for(i=1;i<=AtrPeriod;i++) AtrBuffer=0.0;
//----
i=Bars-counted_bars-1;
while(i>=0)
{
double high=High;
double low =Low;
if(i==Bars-1) TempBuffer=high-low;
else
{
double prevclose=Close;
TempBuffer=MathMax(high,prevclose)-MathMin(low,prevclose);
}
i--;
}
//----
if(counted_bars>0) counted_bars--;
int limit=Bars-counted_bars;
for(i=0; i<limit; i++)
AtrBuffer=iMAOnArray(TempBuffer,Bars,AtrPeriod,0,MODE_SMA,i);
//----
double MyArray[];
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
ArrayResize( MyArray, limit);
ArraySetAsSeries(MyArray,true);
for(i=0; i<limit; i++)
{
MyArray = AtrBuffer;
}
for(i=0; i<limit; i++)
{
MaBuffer = iMAOnArray(MyArray,limit,10,0,MODE_SMA,i);
}
//----
return(0);
}
//+------------------------------------------------------------------+[lang=tr]안녕하세요 누군가 메타트레이더 코드에서 이 공식을 작성하는 데 도움을 줄 수 있습니다.
(이것은 메타스톡 공식에 있습니다:)
Q1:=입력("기간",1,1000,3);
Q2:=입력("기간",0.001,100,1);
Q3:=Q2/100;
Q4:=Mov( 일반(),Q1,E) ;
Q5:=If((Q4*(1-Q3))>PREV,Q4*(1-Q3),If((Q4*(1+Q3))<PREV,Q4*(1+Q3),PREV)) ;
Q5
[/언어]
...
흥미로운 것
다른 시간 프레임에 대해 조정해야 하는 유일한 것은 백분율입니다. 1%는 4시간 차트에 적합한 선택인 것처럼 보이지만 다음은 기본 1% 대신 0.5%를 사용하는 15분 차트의 예입니다.
추신: 원래 이름이 무엇인지 몰라서 그대로 이름을 지었습니다.
문안 인사
믈라덴
[lang=tr]안녕하세요 누군가 메타트레이더 코드에서 이 공식을 작성하는 데 도움을 줄 수 있습니다.
(이것은 메타스톡 공식에 있습니다:)
Q1:=입력("기간",1,1000,3);
Q2:=입력("기간",0.001,100,1);
Q3:=Q2/100;
Q4:=Mov( 일반(),Q1,E) ;
Q5:=If((Q4*(1-Q3))>PREV,Q4*(1-Q3),If((Q4*(1+Q3))<PREV,Q4*(1+Q3),PREV)) ;
Q5
[/언어]흥미로운 것
다른 시간 프레임에 대해 조정해야 하는 유일한 것은 백분율입니다. 1%는 4시간 차트에 적합한 선택인 것처럼 보이지만 다음은 기본 1% 대신 0.5%를 사용하는 15분 차트의 예입니다.
추신: 원래 이름이 무엇인지 몰라서 그대로 이름을 지었습니다.
문안 인사
믈라덴[lang=tr]mladen 감사합니다 시도해보겠습니다 , 잘 될 것 같아요 [/언어]