코딩하는 방법? - 페이지 57

 
nondisclosure007:
나는 여기서 무엇이 잘못되었는지 알아 내려고 노력하고 있습니다. 차트의 모든 단일 막대에 화살표를 그릴 수 없는 이유를 알아보기 위해 이 작은 지표를 작성했습니다. 그럴만한 이유가 없습니다.

어떤 것을 선택하는 데 신중을 기할 또 다른 지표가 있습니다. 이 글을 작성하여 문제가 무엇인지 알아내려고 했습니다.

마지막 몇 개의 막대에 대해서만 촛불의 바닥에 화살표를 그립니다. 각 촛불의 상단과 하단에 있는 차트의 모든 단일 막대에 화살표를 그려야 합니다.

그리고 데이터 창에는 1개의 양초 데이터만 표시됩니다.

나는 사진과 표시를 포함했습니다. 도움을 주시면 감사하겠습니다.

두 개의 버퍼를 선언해야 합니다. #property indicator_buffers 2

 
Michel:
두 개의 버퍼를 선언해야 합니다. #property indicator_buffers 2

와. 내가 그것을 놓친 것을 믿을 수 없다.

이제 그들은 모든 촛불에 나타나고 있습니다. 나는 심지어 내가 어느 것을 지시할 수 있는지 알아보기 위해 ima와 간단한 비교를 했습니다. 그것도 작동합니다. 이제 내가해야 할 일은 문제를 일으키는 원래 지표를보고 2를 비교하는 것입니다.

감사해요!

 
ralph.ronnquist:
확실합니까? 현재 창을 벗어나지 않도록 가격 척도를 "압축"했습니까?

당신이 옳았. 그들은 거기에 있었다, 단지 waaaay 떨어져서. 화살표 위치 공식을 변경했습니다. 이제 모두 나타납니다.

 

MACD 손절매

MACD에서 손절매를 하고 싶습니다.

이 코드가 있습니다.

더블 마하=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,TradeBar);

더블 vMach=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,TradeBar+1);

더블 vvMach=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,TradeBar+2);

GlobalVariableSet("mt_Vager1"+Symbol()+마침표(),mtr);

GlobalVariableSet("l_Vager1"+Symbol()+Period(),TP_SL_Inc);

if (TotalOrders(Magic_Number)>0){

부울 g=거짓;

동안(!g){

g=참;

(int kli=OrdersTotal()-1;kli>=0;kli--){

주문선택(kli,SELECT_BY_POS);

만약

(OrderMagicNumber()==Magic_Number && OrderType()==OP_BUY && Mach<vMach && vMach<vvMach)

{

OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),Slippage,Pink);

g=거짓;

부서지다;

}

if(주문

icNumber()==Magic_Number && OrderType()==OP_SELL && m1>m2 && m11<=m21)

(OrderMagicNumber()==Magic_Number && OrderType()==OP_SELL && Mach>vMach && vMach>vvMach)

{

OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),Slippage,Pink);

g=거짓;

부서지다;

}

}

}

}

열기는 작동하지만 정지 손실 출구는 아닙니다.

도움에 감사드립니다.

 

MACD 손절매

TradeBar 읽기

 

다음을 사용하여 트리거에 의해 트리거되는 경고 수를 제한할 수 있다고 생각했습니다.

if(트리거 == 1)

{

int StartWaitingTime = GetTickCount();

if(GetTickCount() - StartWaitingTime > MaxWaiting_sec * 1000)

{

if(ShowAlert == true) {

Alert("구매...........

그러나 작동하지 않는 것 같습니다. 작동하도록 수정하는 데 도움을 주세요. 감사합니다!

 
nondisclosure007:
당신이 옳았. 그들은 거기에 있었다, 단지 waaaay 떨어져서. 화살표 위치 공식을 변경했습니다. 이제 그들은 모두 나타납니다.

또한 루프 전에 avgRange를 0으로 재설정해야 합니다.

평균 범위 = 0;

(카운터=i ;카운터<=i+9;카운터++)

{

avgRange=avgRange+MathAbs(높음[카운터]-낮음[카운터]);

}

로버트

 

문제를 일으킬 수 있는 빨간색 추가 줄이 있습니다.

로버트

Jovager:
MACD에서 손절매를 하고 싶습니다.

이 코드가 있습니다.

더블 마하=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,TradeBar);

더블 vMach=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,TradeBar+1);

더블 vvMach=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,TradeBar+2);

GlobalVariableSet("mt_Vager1"+Symbol()+Period(),mtr);

GlobalVariableSet("l_Vager1"+Symbol()+Period(),TP_SL_Inc);

if (TotalOrders(Magic_Number)>0){

부울 g=거짓;

동안(!g){

g=참;

(int kli=OrdersTotal()-1;kli>=0;kli--){

주문 선택(kli,SELECT_BY_POS);

만약

(OrderMagicNumber()==Magic_Number && OrderType()==OP_BUY && Mach<vMach && vMach<vvMach)

{

OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),Slippage,Pink);

g=거짓;

부서지다;

}

if (주문

icNumber()==Magic_Number && OrderType()==OP_SELL && m1>m2 && m11<=m21) (OrderMagicNumber()==Magic_Number && OrderType()==OP_SELL && Mach>vMach && vMach>vvMach)

{

OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),Slippage,Pink);

g=거짓;

부서지다;

}

}

}

}

열기는 작동하지만 정지 손실 출구는 아닙니다.

도움에 감사드립니다.

 
 
Slakerz:
안녕하세요 여러분, 저는 StopLoss를 넣는 방법을 알아 내려고 노력했습니다. 제 EA는 아래와 같습니다.

...

이 CHingSMARoonCLK는 누구입니까?

내 기억으로는 이 EA는 elCactus의 10p3에 불과하지만 내가 틀렸을 수도 있습니다...

스레드를 확인하면 원하는 것을 찾을 수 있습니다. https://www.mql5.com/en/forum/174975