코딩 도움말 - 페이지 31

 

Multidimensionnal Array에서 작업하면서 너무 간단한 것을 차단합니다..

안녕하세요 아저씨들

화면 줄의 배열에서 셀을 가져오려고 하면(동일한 결과 메시지 경고) 확실한 무언가를 놓치고 있지만 하루 종일 그것에 대해 이해하지 못합니다.

도움이 너무 좋을 것입니다 ... ..

이거 야 :

//+----------------------------------------------- -------------------+

//| !XTEST sur arrays.mq4 |

//| |

//| |

//+----------------------------------------------- -------------------+

#재산권 ""

#속성 링크 ""

#속성 표시기_차트_창

extern int 코인 = 1 ;

외부 int X_Col = 700 ;

외부 정수 Y_Ligne = 30 ;

외부 문자열 FontCar = "Arial" ;

외부 int TailCar = 14 ;

extern color Couleur = 라임 ;

외부 정수 X = 1;

//+----------------------------------------------- -------------------+

//| 커스텀 인디케이터 초기화 기능 |

//+----------------------------------------------- -------------------+

문자열 Tab1dim[2];

문자열 Tab2dim[2,2];

문자열 Tab3dim[2,2,2];

문자열 Tab4dim[2,2,2,2];

// 5eme Dimension de tableau non autorisée . int Tab5dim[20,20,20,80,2];

정수 초기화()

{

//---- 표시기

문자열 Tab1dim[2]={"tab1-c0","tab1C1"};

//----

리턴(0);

}

//+----------------------------------------------- -------------------+

//| 커스텀 인디케이터 초기화 해제 기능 |

//+----------------------------------------------- -------------------+

정수 초기화()

{

//----

ObjectDelete("R");

//----

리턴(0);

}

//+----------------------------------------------- -------------------+

//| 사용자 지정 표시기 반복 기능 |

//+----------------------------------------------- -------------------+

정수 시작()

{

//----

Tab1dim[2]={"tab1-c0","tab1C1"};

문자열 affich=Tab1dim[0];

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

ObjectCreate("A1", OBJ_LABEL, 0, 0, 0);

ObjectSet("A1", OBJPROP_CORNER,Coin);

개체 집합("A1", OBJPROP_XDISTANCE,X_Col);

개체 집합("A1", OBJPROP_YDISTANCE,Y_Ligne);

ObjectSetText("A1",affich,TailCar, FontCar, Couleur );

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

경고(첨부);

//----

리턴(0);

}

//+----------------------------------------------- -------------------+

미리 감사드립니다.

 

...

다음과 같이 시도하십시오( 배열 초기화 는 다르게 수행됨).

//+------------------------------------------------------------------+

//| !XTEST sur arrays.mq4 |

//| |

//| |

//+------------------------------------------------------------------+

#property copyright ""

#property link ""

#property indicator_chart_window

extern int Coin = 1 ;

extern int X_Col = 10 ;

extern int Y_Ligne = 10 ;

extern string FontCar = "Arial" ;

extern int TailCar = 14 ;

extern color Couleur = Lime ;

extern int X = 1;

//+------------------------------------------------------------------+

//| Custom indicator initialization function |

//+------------------------------------------------------------------+

string Tab1dim[] = {"tab1-c0","tab1C1"};

string Tab2dim[2,2];

string Tab3dim[2,2,2];

string Tab4dim[2,2,2,2];

// 5eme Dimension de tableau non autorisée . int Tab5dim[20,20,20,80,2];

int init()

{

//---- indicators

string Tab1dim[2]={"tab1-c0","tab1C1"};

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

ObjectDelete("A1");

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator iteration function |

//+------------------------------------------------------------------+

int start()

{

//----

string affich=Tab1dim[0];

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

ObjectCreate ("A1", OBJ_LABEL, 0, 0, 0 );

ObjectSet ("A1", OBJPROP_CORNER,Coin );

ObjectSet ("A1", OBJPROP_XDISTANCE,X_Col );

ObjectSet ("A1", OBJPROP_YDISTANCE,Y_Ligne );

ObjectSetText("A1",affich,TailCar, FontCar , Couleur );

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//

//----

return(0);

}

//+------------------------------------------------------------------+

Ilevna:
안녕하세요 아저씨들

화면 줄의 배열에서 셀을 가져오려고 하면(동일한 결과 메시지 경고) 확실한 무언가를 놓치고 있지만 하루 종일 그것에 대해 이해하지 못합니다.

도움이 너무 좋을 것입니다 ... ..

이거 야 :

미리 감사드립니다.
 
mladen:
다음과 같이 시도하십시오(배열 초기화는 다르게 수행됨).

//+----------------------------------------------- -------------------+

//| !XTEST sur arrays.mq4 |

//| |****************

감사합니다. 잘 실행되고 있습니다. 하지만 매뉴얼에 쓰여진 것처럼 일반적으로 선언하거나 전역 범위에서 또는 함수 내부에서 이것이 필요한 이유를 이해하지 못합니다. double Tab2Dim[2*n- 삼]; 그렇지 않으면

int [] 값 = 새로운 int[3];

값[0]=5;

값[1]=값[0]*2;

값[2]=값[1]*2;

하지만 내 마지막 날은 좋습니다. 감사합니다.

 

...

ArrayResize() 함수 를 사용하여 이 문제를 부분적으로 극복할 수 있습니다(이렇게 하면 동적으로 크기가 조정되는 배열을 가질 수 있음)

문제는 ArrayResize()가 단일 차원 배열과 배열의 첫 번째 차원에 대해서만 작동한다는 것입니다(예를 들어 array[][2]가 있는 경우 ArrayResize()를 사용하여 이 배열[anySize ][2]). 모든 추가 차원(두 번째 차원 f 배열부터)은 컴파일 시 알려진 일정한 크기여야 합니다.

Ilevna:
감사합니다. 잘 실행되고 있습니다. 하지만 우리가 선언할 수 있는 일반적으로 또는 전역 범위에서 또는 함수 내부에서 매뉴얼에 쓰여진 것과 같은 것이 왜 필요한지 이해가 되지 않습니다. double Tab2Dim[2*n- 삼]; 그렇지 않으면

int [] 값 = 새로운 int[3];

값[0]=5;

값[1]=값[0]*2;

값[2]=값[1]*2;

하지만 내 마지막 날은 좋습니다. 감사합니다.
 

내 밴드 표시기 도움말

안녕하세요 여러분,

jband, tmaband 등과 같은 Band ind를 많이 시도한 후 마침내 내 자신의 Band Indicator를 작성하기로 결정했습니다.

첨부된 것은 내 밴드 표시기이지만 EA가 그것을 Low Band 라인이라고 부를 때 Zero Divide 를 제공할 때 내 코드를 보니 거기에 zeor divisor가 없습니다.

이와 같은 아이디어나 경험이 있으면 문제를 해결하는 데 도움을 주세요.

미리 감사합니다....

파일:
aband.gif  20 kb
 

...

소스가 없으면(또는 사용자 지정 표시기 를 호출하기 위한 코드가 없으면) 아무 것도 말할 수 없습니다. 표시기가 작동하면 오류가 EA에 있는 것보다

kemal44:
안녕하세요 여러분,

jband, tmaband 등과 같은 Band ind를 많이 시도한 후 마침내 내 자신의 Band Indicator를 작성하기로 결정했습니다.

첨부된 것은 내 밴드 표시기이지만 EA가 그것을 Low Band 라인이라고 부를 때 Zero Divide를 제공할 때 내 코드를 보니 거기에 zeor divisor가 없습니다.

이와 같은 아이디어나 경험이 있으면 문제를 해결하는 데 도움을 주세요.

미리 감사합니다....
 

MA 크로스오버 EA 코딩에 도움이 필요합니다.

안녕하세요 여러분,

누군가 내가 컴퓨터에서 떨어져 있을 때 사용할 수 있도록 MA 크로스오버 ea를 코딩하는 데 도움을 줄 수 있는지 궁금합니다.

아이디어는 이것입니다.

1분 차트 - 3개의 EMA 및 8개의 SMA

3 EMA가 8 SMA 아래로 교차하는 경우 매개변수에 미리 설정된 TP 및 SL로 통화 쌍 을 판매하십시오.

3 EMA가 8 SMA를 넘으면 매개변수에 미리 설정된 TP 및 SL로 통화 쌍을 구입하십시오.

그런 간단한 MA ea를 코딩할 수 있는지는 모르겠지만 누군가가 나에게 도움을 줄 수 있다면 정말 감사할 것입니다.

미리 감사합니다!

 

...

이 스레드를 확인하셨습니까: https://www.mql5.com/en/forum/general ?

jacktrader:
안녕하세요 여러분,

누군가 내가 컴퓨터에서 떨어져 있을 때 사용할 수 있도록 MA 크로스오버 ea를 코딩하는 데 도움을 줄 수 있는지 궁금합니다.

아이디어는 이것입니다.

1분 차트 - 3개의 EMA 및 8개의 SMA

3 EMA가 8 SMA 아래로 교차하는 경우 매개변수에 미리 설정된 TP 및 SL로 통화 쌍을 판매하십시오.

3 EMA가 8 SMA를 넘으면 매개변수에 미리 설정된 TP 및 SL로 통화 쌍을 구입하십시오.

그런 간단한 MA ea를 코딩할 수 있는지는 모르겠지만 누군가가 나에게 도움을 줄 수 있다면 정말 감사할 것입니다.

미리 감사합니다!
 
kemal44:
안녕하세요 여러분,

jband, tmaband 등과 같은 Band ind를 많이 시도한 후 마침내 내 자신의 Band Indicator를 작성하기로 결정했습니다.

첨부된 것은 내 밴드 표시기이지만 EA가 그것을 Low Band 라인이라고 부를 때 Zero Divide를 제공할 때 내 코드를 보니 거기에 zeor divisor가 없습니다.

이와 같은 아이디어나 경험이 있으면 문제를 해결하는 데 도움을 주세요.

미리 감사합니다....

밴드 ind의 코드는 다음과 같습니다.

EA는 중상위 신호를 호출하지만 저대역이 문제입니다.

//+----------------------------------------------- -------------------+

//| IndicatorPlan.mq4 |

//| Copyright © 2007, MetaQuotes Software Corp. |

//| MetaTrader 5 거래 플랫폼 / MetaQuotes Software Corp. |

//+----------------------------------------------- -------------------+

#property copyright "Copyright © 2007, MetaQuotes Software Corp."

#속성 링크 "http://www.metaquotes.net/"

//---- 메인 창에 표시기 그리기

#속성 표시기_차트_창

//---- 표시기 버퍼의 수

#속성 표시기_버퍼 3

//---- 표시기 색상

#property indicator_color1 골드

#property indicator_color2 마젠타

#property indicator_color3 블루바이올렛

//---- 표시기의 입력 매개변수

외부 정수 MBand_Period = 15;

외부 정수 UpBand_Period = 15;

외부 정수 DnBand_Period = 15;

외부 int ABand_Timeframe = 15;

외부 정수 시프트 = 0;

//---- 표시기 버퍼

이중 Ind_Buffer0[];

이중 Ind_Buffer1[];

이중 Ind_Buffer2[];

이중 Ind_Buffer3[];

이중 Ind_Buffer4[];

//+----------------------------------------------- -------------------+

//| 커스텀 인디케이터 초기화 기능 |

//+----------------------------------------------- -------------------+

정수 초기화()

{

IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

IndicatorShortName("ABand "+ABand_Timeframe);

//---- 그래프 실행 스타일 정의

SetIndexStyle(0, DRAW_LINE);

SetIndexLabel(0,"MBand "+MBand_Period);

SetIndexStyle(2, DRAW_LINE);

SetIndexLabel(2,"UpBand "+UpBand_Period);

SetIndexStyle(1, DRAW_LINE);

SetIndexLabel(1,"DnBand "+DnBand_Period);

//---- 3개의 표시기 버퍼가 계산에 사용됩니다.

표시 버퍼(5);

SetIndexBuffer(0, Ind_Buffer0);

SetIndexBuffer(1, Ind_Buffer1);

SetIndexBuffer(2, Ind_Buffer2);

SetIndexBuffer(3, Ind_Buffer3);

SetIndexBuffer(4, Ind_Buffer4);

//---- óñòàíîâêà íîìåğà áàòîğ

//---- Óñòàíîâêà ôîğìàòà òî÷íîñòè îòîáğàæåíèÿ èíäèêàòîğà

IndicatorDigits(숫자);

//---- ğàçìå êàíàëà â ïóíêòàõ

//---- 초기화 끝

리턴(0);

}

//+----------------------------------------------- -------------------+

//| 사용자 지정 표시기 반복 기능 |

//+----------------------------------------------- -------------------+

정수 시작()

{

//---- Ïğîâågêà êîëè÷åñòâà áàğîâ íà äîñòàò÷íîñòü äëÿ äàëüíåéøåãî ğàñ÷¸òà

if(막대 < MBand_Period + UpBand_Period + DnBand_Period)

리턴(0);

//---- İÌÓËßÖÈß ÈÍÄÈÊÀÒΞÍÛÕ ÁÓÔÅĞα

if(ArraySize(Ind_Buffer0) < 막대)

{

ArraySetAsSeries(Ind_Buffer0, 거짓);

ArraySetAsSeries(Ind_Buffer1, 거짓);

ArraySetAsSeries(Ind_Buffer2, 거짓);

ArraySetAsSeries(Ind_Buffer3, 거짓);

ArraySetAsSeries(Ind_Buffer4, 거짓);

//----

ArrayResize(Ind_Buffer0, 막대);

ArrayResize(Ind_Buffer1, 막대);

ArrayResize(Ind_Buffer2, 막대);

ArrayResize(Ind_Buffer3, 막대);

ArrayResize(Ind_Buffer4, 막대);

//----

ArraySetAsSeries(Ind_Buffer0, true);

ArraySetAsSeries(Ind_Buffer1, true);

ArraySetAsSeries(Ind_Buffer2, true);

ArraySetAsSeries(Ind_Buffer3, true);

ArraySetAsSeries(Ind_Buffer4, true);

}

//----+ ÂÅÄÅÍÈÅ ÑÒÀÒÈ×ÅÑÊξ ÖÅËÉ ÏÅĞÅÌÅÍÍξ ÏÀÌßÒÈ

정적 정수 IndCounted;

//----+ 부동 소수점 변수 삽입

이중 Resalt0, Resalt1, Resalt2;

이중 가격;

//----+ 정수 변수 삽입 및 계산된 막대 가져오기

정수 제한, MaxBar, 막대, counted_bars = IndicatorCounted();

정수 i, k;

//---- 가능한 오류 확인

if(counted_bars < 0)

리턴(-1);

//---- 마지막으로 계산된 막대를 다시 계산해야 합니다.

if(counted_bars > 0)

counted_bars--;

//---- 가장 오래된 막대의 번호를 정의하고,

// 새로운 막대가 다시 계산되는 시작점

제한 = 막대 - counted_bars - 1;

//---- 가장 오래된 막대의 번호를 정의하고,

// 새로운 막대가 다시 계산되는 시작점

MaxBar = 막대 - 1 - (MBand_Period + UpBand_Period + DnBand_Period);

//---- 0 초기화

if(제한 > MaxBar)

{

제한 = MaxBar;

for(bar = 막대 - 1, 막대 >= MaxBar, 막대--)

{

Ind_Buffer0 = 0.0;

Ind_Buffer1 = 0.0;

Ind_Buffer2 = 0.0;

Ind_Buffer3 = 0.0;

Ind_Buffer4 = 0.0;

}

}

//----+ 지표 계산의 첫 번째 주기

i=바-DnBand_Period;

if(counted_bars>DnBand_Period) i=바-카운트_바-1;

동안(i>=0)

{

i=바-DnBand_Period;

if(counted_bars>DnBand_Period) i=바-카운트_바-1;

동안(i>=0)

{

이중 최소값 = 1000000;

k=i+DnBand_Period-1;

동안(k>=i)

{

가격=Resalt1[k];

if(최소>가격) 최소=가격;

케이--;

}

Ind_Buffer1=분;

나--;

}

}

for(i=0; i<한계; i++)

{

// 여기 변수 Resalt0 계산의 코드

// 버퍼 UpBand[]의 값을 기반으로 합니다.

// 및 외부 변수 0

Ind_Buffer3 =iMAOnArray(Ind_Buffer1,limit,DnBand_Period,shift,ma_method,i);

}

//----+ 지표 계산의 두 번째 주기

{

i=막대-UpBand_Period;

if(counted_bars>UpBand_Period) i=바-카운트_바-1;

동안(i>=0)

{

이중 최대 = -1000000;

k=i+UpBand_Period-1;

동안(k>=i)

{

가격=Resalt2[k];

if(최대<가격) 최대=가격;

케이--;

}

Ind_Buffer2=최대;

나--;

}

}

//---- 신호 라인은 단순 movimg 평균입니다.

for(i=0; i<한계; i++)

{

// 여기 변수 Resalt0 계산의 코드

// 버퍼 UpBand[]의 값을 기반으로 합니다.

// 및 외부 변수 0

Ind_Buffer4 = iMAOnArray(Ind_Buffer2,limit,UpBand_Period,shift,ma_method,i);

}

//----+ 지표 계산의 주요 주기

//---- 신호 라인은 단순 movimg 평균입니다.

for(i=0; i<한계; i++)

{

// 여기 변수 Resalt0 계산의 코드

// 버퍼 UpBand[]의 값을 기반으로 합니다.

// 및 외부 변수0

Ind_Buffer0 =(Ind_Buffer2+Ind_Buffer1)/2;

}

리턴(0);

}

//+----------------------------------------------- -------------------+

 

...

iCustom() 호출을 어떻게 사용하고 있는지 게시할 수 있습니까?

kemal44:
밴드 ind의 코드는 다음과 같습니다.

EA는 중상위 신호를 호출하지만 저대역이 문제입니다.

//+----------------------------------------------- -------------------+

//| IndicatorPlan.mq4 |

//| Copyright © 2007, MetaQuotes Software Corp. |

//| MetaTrader 5 거래 플랫폼 / MetaQuotes Software Corp. |

//+----------------------------------------------- -------------------+

#property copyright "Copyright © 2007, MetaQuotes Software Corp."

#속성 링크 "http://www.metaquotes.net/"

//---- 메인 창에 표시기 그리기

#속성 표시기_차트_창

//---- 표시기 버퍼의 수

#속성 표시기_버퍼 3

//---- 표시기 색상

#property indicator_color1 골드

#property indicator_color2 마젠타

#property indicator_color3 블루바이올렛

//---- 표시기의 입력 매개변수

외부 정수 MBand_Period = 15;

외부 정수 UpBand_Period = 15;

외부 정수 DnBand_Period = 15;

외부 int ABand_Timeframe = 15;

외부 정수 시프트 = 0;

//---- 표시기 버퍼

이중 Ind_Buffer0[];

이중 Ind_Buffer1[];

이중 Ind_Buffer2[];

이중 Ind_Buffer3[];

이중 Ind_Buffer4[];

//+----------------------------------------------- -------------------+

//| 커스텀 인디케이터 초기화 기능 |

//+----------------------------------------------- -------------------+

정수 초기화()

{

IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS));

IndicatorShortName("ABand "+ABand_Timeframe);

//---- 그래프 실행 스타일 정의

SetIndexStyle(0, DRAW_LINE);

SetIndexLabel(0,"MBand "+MBand_Period);

SetIndexStyle(2, DRAW_LINE);

SetIndexLabel(2,"UpBand "+UpBand_Period);

SetIndexStyle(1, DRAW_LINE);

SetIndexLabel(1,"DnBand "+DnBand_Period);

//---- 3개의 표시기 버퍼가 계산에 사용됩니다.

표시 버퍼(5);

SetIndexBuffer(0, Ind_Buffer0);

SetIndexBuffer(1, Ind_Buffer1);

SetIndexBuffer(2, Ind_Buffer2);

SetIndexBuffer(3, Ind_Buffer3);

SetIndexBuffer(4, Ind_Buffer4);

//---- óñòàíîâêà íîìåğà áàòîğ

//---- Óñòàíîâêà ôîğìàòà òî÷íîñòè îòîáğàæåíèÿ èíäèêàòîğà

IndicatorDigits(숫자);

//---- ğàçìå êàíàëà â ïóíêòàõ

//---- 초기화 끝

리턴(0);

}

//+----------------------------------------------- -------------------+

//| 사용자 지정 표시기 반복 기능 |

//+----------------------------------------------- -------------------+

정수 시작()

{

//---- Ïğîâågêà êîëè÷åñòâà áàğîâ íà äîñòàò÷íîñòü äëÿ äàëüíåéøåãî ğàñ÷¸òà

if(막대 < MBand_Period + UpBand_Period + DnBand_Period)

리턴(0);

//---- İÌÓËßÖÈß ÈÍÄÈÊÀÒΞÍÛÕ ÁÓÔÅĞα

if(ArraySize(Ind_Buffer0) < 막대)

{

ArraySetAsSeries(Ind_Buffer0, 거짓);

ArraySetAsSeries(Ind_Buffer1, 거짓);

ArraySetAsSeries(Ind_Buffer2, 거짓);

ArraySetAsSeries(Ind_Buffer3, 거짓);

ArraySetAsSeries(Ind_Buffer4, 거짓);

//----

ArrayResize(Ind_Buffer0, 막대);

ArrayResize(Ind_Buffer1, 막대);

ArrayResize(Ind_Buffer2, 막대);

ArrayResize(Ind_Buffer3, 막대);

ArrayResize(Ind_Buffer4, 막대);

//----

ArraySetAsSeries(Ind_Buffer0, true);

ArraySetAsSeries(Ind_Buffer1, true);

ArraySetAsSeries(Ind_Buffer2, true);

ArraySetAsSeries(Ind_Buffer3, true);

ArraySetAsSeries(Ind_Buffer4, true);

}

//----+ ÂÅÄÅÍÈÅ ÑÒÀÒÈ×ÅÑÊÉ ÖÅËÉ ÏÅĞÅÌÅÍÍÉ ÏÀÌßÒÈ

정적 정수 IndCounted;

//----+ 부동 소수점 변수 삽입

이중 Resalt0, Resalt1, Resalt2;

이중 가격;

//----+ 정수 변수 삽입 및 계산된 막대 가져오기

정수 제한, MaxBar, 막대, counted_bars = IndicatorCounted();

정수 i, k;

//---- 가능한 오류 확인

if(counted_bars < 0)

리턴(-1);

//---- 마지막으로 계산된 막대를 다시 계산해야 합니다.

if(counted_bars > 0)

counted_bars--;

//---- 가장 오래된 막대의 번호를 정의하고,

// 새로운 막대가 다시 계산되는 시작점

제한 = 막대 - counted_bars - 1;

//---- 가장 오래된 막대의 번호를 정의하고,

// 새로운 막대가 다시 계산되는 시작점

MaxBar = 막대 - 1 - (MBand_Period + UpBand_Period + DnBand_Period);

//---- 0 초기화

if(제한 > MaxBar)

{

제한 = MaxBar;

for(bar = 막대 - 1, 막대 >= MaxBar, 막대--)

{

Ind_Buffer0 = 0.0;

Ind_Buffer1 = 0.0;

Ind_Buffer2 = 0.0;

Ind_Buffer3 = 0.0;

Ind_Buffer4 = 0.0;

}

}

//----+ 지표 계산의 첫 번째 주기

i=바-DnBand_Period;

if(counted_bars>DnBand_Period) i=바-카운트_바-1;

동안(i>=0)

{

i=바-DnBand_Period;

if(counted_bars>DnBand_Period) i=바-카운트_바-1;

동안(i>=0)

{

이중 최소 = 1000000;

k=i+DnBand_Period-1;

동안(k>=i)

{

가격=Resalt1[k];

if(최소>가격) 최소=가격;

케이--;

}

Ind_Buffer1=분;

나--;

}

}

for(i=0; i<한계; i++)

{

// 여기 변수 Resalt0 계산의 코드

// 버퍼 UpBand[]의 값을 기반으로 합니다.

// 및 외부 변수 0

Ind_Buffer3 =iMAOnArray(Ind_Buffer1,limit,DnBand_Period,shift,ma_method,i);

}

//----+ 지표 계산의 두 번째 주기

{

i=막대-UpBand_Period;

if(counted_bars>UpBand_Period) i=바-카운트_바-1;

동안(i>=0)

{

이중 최대 = -1000000;

k=i+UpBand_Period-1;

동안(k>=i)

{

가격=Resalt2[k];

if(최대<가격) 최대=가격;

케이--;

}

Ind_Buffer2=최대;

나--;

}

}

//---- 신호 라인은 단순 movimg 평균입니다.

for(i=0; i<한계; i++)

{

// 여기 변수 Resalt0 계산의 코드

// 버퍼 UpBand[]의 값을 기반으로 합니다.

// 및 외부 변수 0

Ind_Buffer4 = iMAOnArray(Ind_Buffer2,limit,UpBand_Period,shift,ma_method,i);

}

//----+ 지표 계산의 주요 주기

//---- 신호 라인은 단순 movimg 평균입니다.

for(i=0; i<한계; i++)

{

// 여기 변수 Resalt0 계산의 코드

// 버퍼 UpBand[]의 값을 기반으로 합니다.

// 및 외부 변수0

Ind_Buffer0 =(Ind_Buffer2+Ind_Buffer1)/2;

}

리턴(0);

}

//+----------------------------------------------- -------------------+
사유: