다중 기간 표시기 - 페이지 1134

 
Jeaa :

친애하는 mladen,

나는 당신이 아주 잘되기를 바랍니다.

ZZ 표시기에서 EA 기반을 하려고 했습니다... ZZ 표시기가 값을 얻을 때 구매 주문을 열 수 있습니다. 그러나 주문이 마감되지 않았습니다 ...

도와주세요?

고급에 감사합니다...


정수 MagicN = 1453;

extern int Barras=5; // 칸티다드 드 바라스
외부 정수 y = 5;
//------------------------------------------------ --------------------
extern 이중 로트 = 0.01;
extern 이중 미끄러짐 = 3;
외부 이중 기간1 = 5;
외부 문자열 Dev_Step_1 ="0,5";
extern int Symbol_1_Kod = 140;

//------------------------------------------------ --------------------
bool GV_Flag_NuevaBarra=거짓; // 플래그 드 우나 누에바 바라
//================================================== ========================

int start() // 특수 함수. 시작()
{
//------------------------------------------------ --------------------
Fun_NuevaBarra(); // 함수 호출
if (GV_Flag_NuevaBarra==false) // 시 노 건초 누에바 바라..
반품; // ..반품
//================================================== ===========================
int IndMin = ArrayMinimum(낮음, 바라스, 1);
int IndMax =ArrayMaximum(높음, 바라스, 1);
이중 ZZ, CC;

이중 매수=낮음[IndMin];
이중 XX=높음[IndMax];

ZZ=iCustom(Symbol(),0,"3_Level_ZZ_Semafor",Period1,Dev_Step_1,Symbol_1_Kod,0,y);
CC=iCustom(Symbol(),0,"3_Level_ZZ_Semafor",Period1,Dev_Step_1,Symbol_1_Kod,1,y);

if (구매 == ZZ)
{
Alert(Symbol(),": Barras= ",Barras,", ZZ= ",DoubleToString(ZZ,Digits),", Precio= ",DoubleToString(Buy,Digits) );

int ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,"Jeaa",MagicN,0,Blue);

Print("Orden de Compra Envirada: xxxx");// falta colocar el OrderTicket()
}
//================================================== ===========================

경우 (XX == CC)

{
if(OrderMagicNumber()== MagicN)
{ //---- 주문 유형 확인
if(주문 유형()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,White);

Alert(Symbol(),": Barras= ",Barras,", CC= ",DoubleToString(CC,Digits),", Precio= ",DoubleToString(XX,Digits) );

인쇄("=====ORDEN CERRADA=====");
}
}
}
//================================================== ===============================
반품;
}
//================================================== ===========================

void Fun_NuevaBarra() // 감지 기능에 대한 설명 ..
{ // .. 우나 누에바 바라
정적 날짜 시간 NewTime=0; // 변수 que almacena fecha y hora
GV_Flag_NuevaBarra=거짓; // Inicializa nueva barra a falso (no hay nueva barra)
if(NewTime!=Time[0]) // 현재 존재하는 누에바 바라 엘 데이토 es distinto de cero..
{
NewTime=시간[0]; //.. y en ese caso se registra el hora y fecha de la..
GV_Flag_NuevaBarra=참; //nueva barra y se activa el flag que señaliza la…
//existencia de una nueva barra

}
}
//------------------------------------------------ --------------------

내가 볼 때 당신은 잘못된 조건을 테스트하고 있습니다

버퍼 1의 값과 너무 3_Level_ZZ_Semafor의 값은 같을 수 없습니다(다른 위치에 표시됨).

 
친애하는 믈라덴

지표에 (MTF)를 추가하기를 바랍니다.

제발, 친애하는 선생님

 
mladen :

코드를 다음과 같이 변경합니다.

친애하는 친구, mladen 감사합니다.

도와 주셔서 정말로 고맙습니다.

 
mladen :

코드를 다음과 같이 변경합니다.

친애하는 mladen

코드는 작동하지 않습니다. 오류가 있습니다. "입력"을 " MA_TF"에 대한 "extern"으로 변경했습니다.

그런 다음 작동했지만 문제는 여전히 남아있었습니다. 차트 끝의 지표를 이동(수송)하지 않는다는 뜻입니다. 포지티브 시프트가 작동하지 않습니다.

그러나 부정적인 것은 잘 작동합니다.

다시 감사합니다.

 
rartec4 :

친애하는 mladen

코드는 작동하지 않습니다. 오류가 있습니다. "입력"을 " MA_TF"에 대한 "extern"으로 변경했습니다.

그런 다음 작동했지만 문제는 여전히 남아있었습니다. 차트 끝의 지표를 이동(수송)하지 않는다는 뜻입니다. 포지티브 시프트가 작동하지 않습니다.

그러나 부정적인 것은 잘 작동합니다.

다시 감사합니다.

전혀 문제없이 작동합니다

무엇을 테스트했는지 모르지만 이것은 테스트에 사용한 것(첨부)이며 테스트 결과는 다음과 같습니다(양성 및 음성 테스트 모두 포함). 따라서 모든 것이 예상대로 작동하고 설명합니다.


파일:
_test.mq4  2 kb
 
mladen :

전혀 문제없이 작동합니다

무엇을 테스트했는지 모르지만 이것은 테스트에 사용한 것(첨부)이며 테스트 결과는 다음과 같습니다(양성 및 음성 테스트 모두 포함). 따라서 모든 것이 예상대로 작동하고 설명합니다.


친애하는 MLADEN

당신이 옳습니다. 그것은 내 실수였습니다.

도와준 친구에게 다시 한 번 감사드립니다.

 
mladen :

내가 볼 때 당신은 잘못된 조건을 테스트하고 있습니다

버퍼 1의 값과 너무 3_Level_ZZ_Semafor의 값은 같을 수 없습니다(다른 위치에 표시됨).

사랑하는 멜란덴...

귀하의 의견에 감사드립니다...

MagicNumber를 사용하도록 EA를 수정했지만... 사용자 지정 표시기 가 메모리를 가득 찼습니다.

2016.09.18 00:33:10.627 사용자 지정 표시기 3_Level_ZZ_Semafor EURUSD,M5에 대한 1039개의 막대에 대한 메모리가 충분하지 않습니다.

어떡해? 고급 감사합니다... 예수...

//+----------------------------------------------- -------------------+
//| MA_jeaa_EA.mq4 |
//+----------------------------------------------- -------------------+
#property copyright "예수 아세도"

//--- 입력 매개변수 ---
입력 더블 Lotes=0.01;
입력 정수 MagicNumber=1453;
입력 int Barras=5;
입력 정수 y=5;
이중 입력 주기1= 5;
입력 문자열 Dev_Step_1="0,5";
입력 정수 Symbol_1_Kod=140;
입력 int 미끄러짐=3;

//+----------------------------------------------- -------------------+
//| 전문가 초기화 기능 |
//+----------------------------------------------- -------------------+
int OnInit()
{
반환(INIT_SUCCEEDED);
}
//+----------------------------------------------- -------------------+
//| 전문적인 초기화 해제 기능 |
//+----------------------------------------------- -------------------+
무효 OnDeinit(const int 이유)
{

}
//+----------------------------------------------- -------------------+
//| 전문가 틱 기능 |
//+----------------------------------------------- -------------------+
무효 OnTick()
{
//---
긴 TicketEnUso = 티켓();
if (TicketEnUso>0) // 중요한 건... 운영에 대한 중요한 통제...
{
if (OrderSelect(TicketEnUso,SELECT_BY_TICKET, MODE_TRADES))
{
if (OrderType()==OP_BUY) // buscar una salida por debajo de un promedio
{
if (Open[y]==ZZ(Period1)) Cierre(TicketEnUso);
}
if (OrderType()==OP_SELL) // 버스카 una salida por encima de un promedio
{
if (Close[y]==CC(Period1)) Cierre(TicketEnUso);
}
}
}
if (TicketEnUso<1) // 건초 거래가 불가능합니다.
{
if (닫기[y]==CC(기간1))
{
Abre(OP_BUY);
Alert(Symbol(),": Barras= ",Barras,", ZZ= ",DoubleToString(ZZ(Period1),Digits),", Precio= ",DoubleToString(Close[y],Digits));
인쇄("===COMPRA===");
}
if (열기[y]==ZZ(기간1))
{
Abre(OP_SELL);
Alert(Symbol(),": Barras= ",Barras,", CC= ",DoubleToString(CC(Period1),Digits),", Precio= ",DoubleToString(Open[y],Digits));
인쇄("===VENTA===");
}

}
}
//================================================== ================================================
이중 ZZ(int Periodos)
{
return (iCustom(Symbol(),0,"3_Level_ZZ_Semafor",Periodos,Dev_Step_1,Symbol_1_Kod,1,y));
}

이중 CC(int Periodos)
{
return (iCustom(Symbol(),0,"3_Level_ZZ_Semafor",Periodos,Dev_Step_1,Symbol_1_Kod,0,y));
}


//================================================== ================================================
긴 티켓()
{
(int o=0; o<OrdersTotal(); o++)
{
if (OrderSelect(o,SELECT_BY_POS,MODE_TRADES))
{
if (MagicNumber == OrderMagicNumber()) return(OrderTicket());
}
}
리턴(0);
}

void Abre(int Tipo)
{
if (AccountFreeMargin()<(1000*Lotes))// filtro operaciones que no podria correr por falta de margen disponible
{
Print("건초 식당이 없습니다. Free Margin= ",AccountFreeMargin());
반품;
}
// 선택 가능한 precio por Operación
더블 프레시오=0;
if(Tipo==OP_BUY) 프레시오=묻다; else Precio=입찰가;
재설정 마지막 오류();
if (OrderSend(NULL,Tipo,Lotes,Precio,Slippage,0,0,NULL,MagicNumber,0,clrNONE)<1) Print (GetLastError());// 10 es fracciones de pips...
}

void Cierre(긴 티켓 번호)
{
더블 프레시오=0;
if (OrderSelect(TicketNo,SELECT_BY_TICKET,MODE_TRADES))
{
if(OrderType()==OP_BUY) Precio=입찰가; else Precio=Ask;//selecciono precio de salida segun tipo de Operación
ResetLastError();//오류 재설정
if(OrderClose(TicketNo,Lotes,Precio,Slippage,clrNONE)) Print(GetLastError());//임시 오류 처리
}
}

//================================================== ========================

 
안녕 mladen, 이 표시기를 다시 칠하지 않고 mtf로 만들 수 있습니까????... 감사합니다....
파일:
 
jjventural :
안녕 mladen, 이 표시기를 다시 칠하지 않고 mtf로 만들 수 있습니까????... 감사합니다....

이름이 바뀌고 디컴파일된 sidus(다시 그리는 버전)입니다.

다시 칠하지 않는 버전은 sidus 버전 3 이상을 사용할 수 있습니다.

 
알았어, 고마워....