묻다! - 페이지 7

 

안녕하세요, 저는 cci<-150

틱 단위로 틱으로 경고합니다. 촛불이 닫힐 때만 경고하도록 누구든지 수정할 수 있습니까?

이 경우 5m 촛불의 끝에서 cci가 < -150일 때만 경고를 받고 싶습니다.

미리 감사드립니다

파일:
 

좋아, 두 번째 질문, 나는 이것이 쉽다고 생각한다.

가격 종가가 MA를 넘을 때 알려주는 사용자 지표를 구축 중입니다.

iCustom을 사용하여 MA 표시기를 가져오고 있습니다.

그런 다음 가격 닫기를 사용하는 방법을 모르겠습니다. CLOSE 및 PRICE_CLOSE를 시도했지만 결과가 없었습니다.

if (닫기?>ma1)

adx값= -1;

만약 (PRICE_CLOSE?>ma1)

adx값= -1;

또한 경고가 5m 막대 끝에서만 울리고 틱 단위로 작동하지 않기를 원합니다. 다른 무엇을 변경해야합니까 (이 질문은 이전 게시물의 질문입니다)

감사해요

 

안녕하세요 Codersguru님,

Osma Color에 경고를 코딩하여 색상이 변경될 때 경고하도록 도와 주시겠습니까?

감사해요

던컨

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

//| OsMA_color.mq4 |

//| 라파엘 |

//| marynarz15@wp.pl |

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

#재산권 "라파엘"

#속성 링크 "marynarz15@wp.pl"

//---- 표시기 설정

#속성 표시기_분리_창

#속성 표시기_버퍼 2

#property indicator_color1 라임

#property indicator_color2 빨간색

//---- 표시기 매개변수

외부 int FastEMA=12;

extern int SlowEMA=26;

외부 정수 SignalSMA=9;

//---- 표시기 버퍼

이중 ind_buffer1a[];

이중 ind_buffer1b[];

이중 ind_buffer2[];

이중 ind_buffer3[];

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

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

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

정수 초기화()

{

//---- 2개의 추가 버퍼가 계산에 사용됩니다.

표시기버퍼(4);

//---- 그리기 설정

SetIndexStyle(0,DRAW_HISTOGRAM,STYLE_SOLID,2);

SetIndexStyle(1,DRAW_HISTOGRAM,STYLE_SOLID,2);

SetIndexDrawBegin(0,SignalSMA);

SetIndexDrawBegin(1,SignalSMA);

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

//---- 3개의 인디케이터 버퍼 매핑

if(!SetIndexBuffer(0,ind_buffer1a) &&

!SetIndexBuffer(1,ind_buffer1b) &&

!SetIndexBuffer(2,ind_buffer2) &&

!SetIndexBuffer(3,ind_buffer3))

Print("표시 버퍼를 설정할 수 없습니다!");

//---- DataWindow의 이름 및 표시기 하위 창 레이블

IndicatorShortName("OsMA("+FastEMA+","+SlowEMA+","+SignalSMA+")");

//---- 초기화 완료

리턴(0);

}

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

//| 오실레이터의 이동 평균 |

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

정수 시작()

{

정수 제한;

int counted_bars=IndicatorCounted();

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

if(counted_bars<0) return(-1);

//---- 마지막으로 계산된 막대가 다시 계산됩니다.

if(counted_bars>0) counted_bars--;

limit=막대-counted_bars;

//---- 첫 번째 추가 버퍼에서 macd 계산

for(int i=0; i<limit; i++)

ind_buffer2=iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i)

-iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i);

//---- 2번째 추가 버퍼에서 카운트된 신호 라인

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

ind_buffer3=iMAOnArray(ind_buffer2,막대,SignalSMA,0,MODE_SMA,i);

//---- 메인 루프

이중 값=0;

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

{

ind_buffer1a=0.0;

ind_buffer1b=0.0;

값=ind_buffer2-ind_buffer3;

if (값>0) ind_buffer1a=값;

if (값<0) ind_buffer1b=값;

}

//---- 완료

반환(0);

}

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

 

안녕

나는 나비 패턴을 인식할 수 있는 표시기가 있지만 MT3용으로 작성되었으며 누구든지 나에게 호의를 베풀고 MQL4로 변환할 수 있습니다.

파일:
butterfly.mql  3 kb
 

패턴의 요지와 규칙이 언급된 2개의 pdf를 첨부했습니다.

파일:
attachment2.pdf  141 kb
attachment1.pdf  189 kb
 

안녕

안녕하세요 여러분,

당신은 모두 이 작가의 이름을 알고 있을 수 있지만 결코 그것을 알지 못했습니다

그의 방법은 소프트웨어로 코딩되었습니다.

Pesavento는 다른 사람들 사이에서 이 훌륭한 책을 썼습니다.

* 패턴 인식을 통한 피보나치 비율

* 주식 거래를 위한 수익성 있는 패턴

* Astro-Cycles : Traders Viewpoint

그런데 ENSIGN 소프트웨어에는 다음 링크에서 볼 수 있는 원래 Pesavento Patterns 학습 도구도 있다는 것을 알고 있습니다.

누군가가 그것을 ENSIGN에서 MetaTrader 4로 가져올 수 있다면 그것은 놀라운 일이 될 것입니다.

http://www.ensignsoftware.com/help/pesavento.htm

 

안녕 다시

두 플랫폼에서 gartley 222 패턴에 대한 코드를 찾았습니다.

누군가 그것을 MetaTrade 4로 번역할 수 있다면 그것은 훌륭할 것입니다!

다음은 코드입니다.

1. Aaron Behle와 Mark Conway가 작성한 "Trading the Gartley 222"에서 찾은 Gartley 222 패턴에 대한 TradeStation 코드, p. 38:

입력:

길이(100),

힘(8),

공차(0.10),

BullColor(파란색),

BearColor(빨간색);

변수:

F1(0.618),

F2(0.786),

F3(1.27),

F4(1.618),

P1바(-1),

P2바(-1),

T1바(-1),

T2바(-1),

P1(0.0),

P2(0.0),

T1(0.0),

T2(0.0),

PTValid(거짓),

HLValid(거짓),

인존(거짓),

GD(0.0),

XA(0.0),

AB(0.0),

BC(0.0),

CD(0.0),

AD(0.0),

C1(거짓),

C2(거짓),

C3(거짓),

C4(거짓),

ABdXA(0.0),

BCdAB(0.0),

CDDBC(0.0),

ADDXA(0.0),

TL1(-1),

TL2(-1),

TL3(-1),

TL4(-1),

TL5(-1),

TL6(-1);

P1Bar = SwingHighBar(1, 높음, 강도, 길이);

P2Bar = SwingHighBar(2, 높음, 강도, 길이);

T1Bar = SwingLowBar(1, 낮음, 강도, 길이);

T2Bar = SwingLowBar(2, 낮음, 강도, 길이);

P1Bar -1인 경우

P2Bar -1 및

T1Bar -1 및

T2Bar -1 그런 다음 시작

{강세 222 테스트}

{저점 X는 T2}

T2 = 낮음[T2Bar];

{피크 A는 P2}

P2 = 높음[P2Bar];

{저물 B는 T1}

T1 = 낮음[T1Bar];

{피크 C는 P1}

P1 = 높음[P1Bar];

{D는 구매 포인트입니다}

GD = 낮음

PTValid = P1Bar < T1Bar 및 T1Bar < P2Bar 및 P2Bar < T2Bar;

HLValid = P1 T2 및 P1 > T1;

InZone = GD T2 및 P2 >= 가장 높음(높음, T2Bar);

PTValid 및 HLValid 및 InZone이면 시작

XA = P2 - T2;

AB = P2 - T1;

BC = P1 - T1;

CD = P1 - GD;

광고 = P2 - GD;

ABdXA = AB / XA; {AB는 XA의 61.8%여야 함}

C1 = ABdXA > F1 - 허용 오차 및 ABdXA < F1 + 허용 오차;

BCdAB = BC / AB; {BC는 AB의 61.8-78.6%여야 함}

C2 = BCdAB > F1 - 공차 및 BCdAB < F2 + 공차;

CDdBC = CD / BC; {CD는 BC의 127-161.8%여야 함}

C3 = CDdBC > F3 - 허용 오차 및 CDdBC < F4 + 허용 오차;

ADdXA = AD / XA; {AD는 XA의 78.6%여야 함}

C4 = ADdXA > F2 - 공차 및 ADdXA < F2 + 공차;

C1 및 C2 및 C3 및 C4 다음 시작

TL1 = TL_New(날짜[T2Bar], 시간[T2Bar], T2, 날짜[P2Bar], 시간[P2Bar], P2);

TL1 >= 0이면 시작

TL_SetColor(TL1, BullColor);

TL_SetStyle(TL1, 도구_솔리드);

TL_SetSize(TL1, 2);

끝;

TL2 = TL_New(날짜[P2Bar], 시간[P2Bar], P2, 날짜[T1Bar], 시간[T1Bar], T1);

TL2 >= 0이면 시작

TL_SetColor(TL2, BullColor);

TL_SetStyle(TL2, 도구_솔리드);

TL_SetSize(TL2, 2);

끝;

TL3 = TL_New(날짜[T1Bar], 시간[T1Bar], T1, 날짜[P1Bar], 시간[P1Bar], P1);

TL3 >= 0이면 시작

TL_SetColor(TL3, BullColor);

TL_SetStyle(TL3, 도구_솔리드);

TL_SetSize(TL3, 2);

끝;

TL4 = TL_New(날짜[P1Bar], 시간[P1Bar], P1, 날짜, 시간, GD);

TL4 >= 0이면 시작

TL_SetColor(TL4, BullColor);

TL_SetStyle(TL4, 도구_솔리드);

TL_SetSize(TL4, 2);

끝;

TL5 = TL_New(날짜[T1Bar], 시간[T1Bar], T1, 날짜, 시간, GD);

TL5 >= 0이면 시작

TL_SetColor(TL5, BullColor);

TL_SetStyle(TL5, 도구_점);

끝;

TL6 = TL_New(날짜[T2Bar], 시간[T2Bar], T2, 날짜, 시간, GD);

TL6 >= 0이면 시작

TL_SetColor(TL6, BullColor);

TL_SetStyle(TL6, 도구_점선);

끝;

끝;

끝;

{약세 222 테스트}

{피크 X는 P2입니다}

{통 A는 T2입니다}

{피크 B는 P1}

{저물 C는 T1}

{GD는 숏포인트}

GD = 높음;

PTValid = T1Bar < P1Bar 및 P1Bar < T2Bar 및 T2Bar < P2Bar;

HLValid = T1 > T2 및 P1 < P2 및 T1 < P1;

InZone = GD > P1 및 GD < P2 및 T2 <= 최저(낮음, P2Bar);

PTValid 및 HLValid 및 InZone이면 시작

XA = P2 - T2;

AB = P1 - T2;

BC = P1 - T1;

CD = GD - T1;

광고 = GD - T2;

ABdXA = AB / XA; {AB는 XA의 61.8%여야 함}

C1 = ABdXA > F1 - 허용 오차 및 ABdXA < F1 + 허용 오차;

BCdAB = BC / AB; {BC는 AB의 61.8-78.6%여야 함}

C2 = BCdAB > F1 - 공차 및 BCdAB < F2 + 공차;

CDdBC = CD / BC; {CD는 BC의 127-161.8%여야 함}

C3 = CDdBC > F3 - 허용 오차 및 CDdBC < F4 + 허용 오차;

ADdXA = AD / XA; {AD는 XA의 78.6%여야 함}

C4 = ADdXA > F2 - 공차 및 ADdXA < F2 + 공차;

C1 및 C2 및 C3 및 C4 다음 시작

TL1 = TL_New(날짜[P2Bar], 시간[P2Bar], P2, 날짜[T2Bar], 시간[T2Bar], T2);

TL1 >= 0이면 시작

TL_SetColor(TL1, BearColor);

TL_SetStyle(TL1, 도구_솔리드);

TL_SetSize(TL1, 2);

끝;

TL2 = TL_New(날짜[T2Bar], 시간[T2Bar], T2, 날짜[P1Bar], 시간[P1Bar], P1);

TL2 >= 0이면 시작

TL_SetColor(TL2, BearColor);

TL_SetStyle(TL2, 도구_솔리드);

TL_SetSize(TL2, 2);

끝;

TL3 = TL_New(날짜[P1Bar], 시간[P1Bar], P1, 날짜[T1Bar], 시간[T1Bar], T1);

TL3 >= 0이면 시작

TL_SetColor(TL3, BearColor);

TL_SetStyle(TL3, 도구_솔리드);

TL_SetSize(TL3, 2);

끝;

TL4 = TL_New(날짜[T1Bar], 시간[T1Bar], T1, 날짜, 시간, GD);

TL4 >= 0이면 시작

TL_SetColor(TL4, BearColor);

TL_SetStyle(TL4, 도구_솔리드);

TL_SetSize(TL4, 2);

끝;

TL5 = TL_New(날짜[P1Bar], 시간[P1Bar], P1, 날짜, 시간, GD);

TL5 >= 0이면 시작

TL_SetColor(TL5, BearColor);

TL_SetStyle(TL5, 도구_점);

끝;

TL6 = TL_New(날짜[P2Bar], 시간[P2Bar], P2, 날짜, 시간, GD);

TL6 >= 0이면 시작

TL_SetColor(TL6, 베어컬러);

TL_SetStyle(TL6, 도구_점선);

끝;

끝;

끝;

끝;

2.Wealth-Lab 코드:

절차 Gartley222

(

VPFactor: 부동 소수점;

공차: 부동;

전환 확인: 정수;

HoldBars: 정수;

VolMin: 정수

);

시작하다

var ATRValue, VP, Reversal: float;

var F1, F2, F3, F4, P1, P2, T1, T2: 부동 소수점;

var Bar, P1Bar, P2Bar, T1Bar, T2Bar, p: 정수;

var XA, AB, BC, CD, AD, D, XD, DT, ABdXA, BCdAB, CDdBC, ADdXA: 부동 소수점;

var PTValid, HLValid, InZone, C1, C2, C3, C4: 부울;

var BT, BS, ST, SS: 부동 소수점;

{피보나치 상수}

F1 := 0.618;

F2 := 0.786;

F3 := 1.27;

F4 := 1.618;

InstallTimeBasedExit(HoldBars);

for Bar := BarCount()에 대한 조회 - 1 do

시작하다

ApplyAutoStops(바);

ATRValue := ATR(막대, 룩백);

SetShareSize( 1000 * Int( 10 / ATRValue ) );

VP := 100 * ATRValue / PriceClose(바);

{봉우리와 저점 찾기}

반전 := Int(VPFactor * VP);

P1 := 피크(바, #높음, F1 * 반전);

P1Bar := PeakBar(바, #높음, F1 * 반전);

P2 := Peak(P1Bar, #High, Reversal);

P2Bar := PeakBar(P1Bar, #High, Reversal);

T1 := Trough(막대, #낮음, F1 * 반전);

T1Bar := TroughBar(바, #낮음, F1 * 반전);

T2 := Trough(T1Bar, #Low, Reversal);

T2Bar := TroughBar(T1Bar, #낮음, 반전);

{강세 222 테스트}

{저점 X는 T2}

{피크 A는 P2}

{저물 B는 T1}

{피크 C는 P1}

{D는 구매 영역입니다}

D := PriceLow(바);

PTValid := (P1Bar > T1Bar) 및 (T1Bar > P2Bar) 및 (P2Bar > T2Bar);

HLValid := (P1 T2) 및 (P1 > T1);

인존 := (D T2);

if (MarketPosition = 0) 및

(SMA(Bar, #Volume, Lookback) >= VolMin) 및

(PTValid) 및 (HLValid) 및 (InZone)

시작하다

XA:= P2 - T2;

AB := P2 - T1;

BC := P1 - T1;

XD := P2 - (F2 * XA);

CD := P1 - XD;

광고 := P2 - XD;

ABdXA := AB / XA; {AB는 XA의 61.8%여야 함}

C1 := (ABdXA > F1 - 허용 오차) 및 (ABdXA < F1 + 허용 오차);

BCdAB := BC / AB; {BC는 AB의 61.8-78.6%여야 함}

C2 := (BCdAB > F1 - 허용 오차) 및 (BCdAB < F2 + 허용 오차);

CDdBC := CD/BC; {CD는 BC의 127-161.8%여야 함}

C3 := (CDdBC > F3 - 내성) 및 (CDdBC < F4 + 내성);

ADdXA := AD / XA; {AD는 XA의 78.6%여야 함}

C4 := (ADdXA > F2 - 허용오차) 및 (ADdXA < F2 + 허용오차);

C1과 C2, C3과 C4라면

시작하다

DrawLine(P2Bar, P2, T2Bar, T2, 0, #Blue, #Solid);

DrawLine(T1Bar, T1, P2Bar, P2, 0, #Blue, #Solid);

DrawLine(P1Bar, P1, T1Bar, T1, 0, #Blue, #Solid);

DrawLine(바, D, P1Bar, P1, 0, #파란색, #솔리드);

DrawLine(막대, D, T1Bar, T1, 0, #파란색, #점선);

DrawLine(막대, D, T2Bar, T2, 0, #파란색, #점선);

AnnotateBar('B', Bar, True, #Blue, 10);

BuyAtLimit(바, XD, 'G222 LE');

DT := F1 * CD;

BT := XD + DT;

BS := T2;

끝;

끝;

{약세 222 테스트}

{피크 X는 P2입니다}

{통 A는 T2입니다}

{피크 B는 P1}

{저물 C는 T1}

{D는 숏존}

D := PriceHigh(바);

PTValid := (T1Bar > P1Bar) 및 (P1Bar > T2Bar) 및 (T2Bar > P2Bar);

HLValid := (T1 > T2) 및 (P1 < P2) 및 (T1 < P1);

InZone := (D > P1) 및 (D < P2);

if (MarketPosition = 0) 및

(PriceClose( Bar ) >= 5) 및

(SMA(Bar, #Volume, Lookback) >= VolMin) 및

(PTValid) 및 (HLValid) 및 (InZone)

시작하다

XA:= P2 - T2;

AB := P1 - T2;

BC := P1 - T1;

XD := T2 + (F2 * XA);

CD := XD - T1;

AD := XD - T2;

ABdXA := AB / XA; {AB는 XA의 61.8%여야 함}

C1 := (ABdXA > F1 - 허용 오차) 및 (ABdXA < F1 + 허용 오차);

BCdAB := BC / AB; {BC는 AB의 61.8-78.6%여야 함}

C2 := (BCdAB > F1 - 허용 오차) 및 (BCdAB < F2 + 허용 오차);

CDdBC := CD/BC; {CD는 BC의 127-161.8%여야 함}

C3 := (CDdBC > F3 - 내성) 및 (CDdBC < F4 + 내성);

ADdXA := AD / XA; {AD는 XA의 78.6%여야 함}

C4 := (ADdXA > F2 - 허용오차) 및 (ADdXA < F2 + 허용오차);

C1과 C2, C3과 C4라면

시작하다

DrawLine(T2Bar, T2, P2Bar, P2, 0, #빨간색, #솔리드);

DrawLine(P1Bar, P1, T2Bar, T2, 0, #빨강, #솔리드);

DrawLine(T1Bar, T1, P1Bar, P1, 0, #레드, #솔리드);

DrawLine(바, D, T1Bar, T1, 0, #레드, #솔리드);

DrawLine(막대, D, P1Bar, P1, 0, #빨간색, #점선);

DrawLine(막대, D, P2Bar, P2, 0, #빨간색, #점선);

AnnotateBar('S', Bar, False, #Red, 10);

ShortAtLimit(바, XD, 'G222 SE');

DT := F1 * CD;

ST := XD - DT;

SS := P2;

끝;

끝;

LastPositionActive이면

시작하다

MarketPosition = 1이면 시작

SellAtLimit(바+1, BT, #모두, 'G222 LX+');

SellAtStop(바+1, BS, #전체, 'G222 LX-');

끝;

MarketPosition = -1이면 시작

CoverAtLimit(막대+1, ST, #모두, 'G222 LX+');

CoverAtStop(바+1, SS, #All, 'G222 LX-');

끝;

끝;

끝;

끝;

Gartley222(2.0, 0.1, 20, 7, 2000000);

 

SMCMA 및 WCMA 란 무엇입니까 ???

누구든지 이 두 가지 MA에 대해 알고 있으며 Meta Trader 4용으로 가져와 사용할 수 있는 위치를 알고 있습니다.

1. SMCMA

2. WCMA

내가 알 수 있는 유일한 것은 이것이 MA의 일부 유형이라는 것입니다.

( 이동 평균 ) 하지만 어디서 얻을 수 있고 어떻게 사용합니까 ??

안녕

Zero_Forex

 

EA에서 다른 통화 쌍 을 사용 중이신가요?

전문가 고문이 다른 통화 쌍 차트를 확인하여 매수 또는 매도 여부를 결정하는 방법을 아는 사람이 있습니까? 예를 들어, EA가 gbp-chf에서 구매 또는 판매할지 여부를 결정하는 기준의 일부로 usd-chf를 살펴보게 하려면 어떻게 해야 합니까? 지금까지 마음에 드는 EA가 있지만 다른 관련 쌍을 확인하기 위해 프로그램에 작성해도 된다면 더 좋을 것 같아요. Codersguru 또는 도움을 줄 수 있는 사람이 있으면 알려주십시오.

감사해요!

 
codersguru:
안녕 여러분,

코드의 일부를 도와달라는 개인적인 메시지를 많이 받았습니다.

여기에 MQL4와 관련된 질문을 게시할 수 있습니다. 최선을 다해 답변해 드리겠습니다.

안녕하세요 코더입니다.

경고음은 5분 바에 한 번만 울리게 할 수 있나요?

조건이 충족될 때 경고가 한 번만 울릴 수 있습니까?

그런 다음 전원을 끕니다.

그런 다음 다음 막대가 열리면 표시기를 새로 고치면 다시 울릴 준비가 됩니다.

그런 다음 0.0005의 조건이 다시 충족될 때까지 다시 한 번 스위치를 끕니다.

그런 다음 다시 켜고 등등......

아래 표시기는 트리거될 때 막대당 많은 경고를 울릴 수 있습니다.

아래를 참조하십시오.

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

//| 주스.mq4 |

//| Perky_z |

//| http://fxovereasy.atspace.com/index |

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

#property copyright "perky"

#속성 링크 "http://fxovereasy.atspace.com/index"

//---- 표시기 설정

#속성 표시기_분리_창

#속성 표시기_버퍼 2

#property indicator_color1 라임그린

#property indicator_color2 FireBrick

//---- 표시기 매개변수

extern bool DoAlerts = false;

외부 정수 AlertFromPips = 5;

extern int Periyod=7;

외부 이중 레벨=5;

extern bool JuiceLevelsVisible = true;

외부 정수 JuiceStartPips = 5;

extern int JuiceStepPips = 5;

외부 정수 JuiceLevelsNumber = 4;

외부 색상 JuiceLevelColor = 은색;

//---- 표시기 버퍼

이중 OsMAUpBuffer[];

이중 OsMADownBuffer[];

이중 OsMA값;

이중 currentJuiceLevel;

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

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

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

정수 초기화()

{

//---- 2개의 추가 버퍼가 계산에 사용됩니다.

표시기버퍼(2);

//---- 그리기 설정

SetIndexStyle(0,DRAW_HISTOGRAM,STYLE_SOLID,2);

SetIndexStyle(1,DRAW_HISTOGRAM,STYLE_SOLID,1);

SetIndexDrawBegin(0,레벨);

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

//---- 2개의 인디케이터 버퍼 매핑

if(!SetIndexBuffer(0,OsMAUpBuffer) &&

!SetIndexBuffer(1,OsMADownBuffer))

Print("표시 버퍼를 설정할 수 없습니다!");

//---- DataWindow의 이름 및 표시기 하위 창 레이블

IndicatorShortName("Juice("+Periyod+","+Level+")");

//---- 초기화 완료

리턴(0);

}

int SetLevelLines()

{

문자열 레벨 레이블;

if(JuiceLevelsVisible)

{

SetLevelStyle(STYLE_DASH,1,JuiceLevelColor);

for(int i=1; i<= JuiceLevelsNumber; i++)

{

currentJuiceLevel = (JuiceStartPips + (i-1)*JuiceStepPips)*포인트;

SetLevelValue(i,currentJuiceLevel);

levelLabel = "레벨 "+i+": "+currentJuiceLevel;

SetIndexLabel(i,levelLabel);

}

}또 다른

{

for(i=1; i<= JuiceLevelsNumber; i++)

{

SetLevelValue(i,0.0);

}

}

}

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

//| 오실레이터의 이동 평균 |

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

정수 시작()

{

//if ( 마침표 != 15) Alert("주스는 15분 차트에만 추천!!");

정수 한계, i;

int counted_bars=IndicatorCounted();

더블 주스;

부울 TurnOnAlert = true;

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

if(counted_bars<0) return(-1);

//---- 마지막으로 계산된 막대가 다시 계산됩니다.

if(counted_bars>0) counted_bars--;

limit=막대-counted_bars;

레벨 = 레벨*포인트;

if (Period()==5 ) 레벨=레벨/2;

SetLevelLines();

//---- 메인 루프

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

{

Juice=iStdDev(NULL,0,Periyod,MODE_EMA,0,PRICE_CLOSE,i)-레벨;

if(주스>0){

OsMAUpBuffer=주스;

OsMADownBuffer=0;

}else if(주스<0){

OsMADownBuffer=주스;

OsMAUpBuffer=0;

}또 다른{

OsMAUpBuffer=0;

OsMADownBuffer=0;

}

}

if(DoAlerts)

{

if (주스 > AlertFromPips*포인트 && 기간() == 5)

{

if (TurnOnAlert)

{

Alert("주스 위의 ",AlertFromPips*Point," for ", Symbol());

PlaySound("Tick.wav");

TurnOnAlert = 거짓;

}

}

또 다른

{

TurnOnAlert = 참;

}

}

//---- 완료

리턴(0);

}

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

도움을 주시면 대단히 감사하겠습니다.

감사합니다.

리.