EA Math Logic-Ayuda

 

Publi

Página 1 de 402 12 ÚltimoÚltimo
Resultados 1 al 10 de 11

Tema: EA Math Logic-Ayuda

  1. #1
    Hola, estoy haciendo un EA para abrir una orden de Cable, esta orden est� disponible 1.5200, 1.5400, 1.5600, 1.5800, 1.6000, 1.6200.... Que este intervalo de 200 dividido por 5,

    en 1.5200 ser� (1.5240, 1.5280, 1.5320, 1.5360, 1.5400)
    en 1.5400 ser� (1.5440, 1.5480, 1.5520, 1.5560, 1.5600)
    y....

    Entonces, cuando adjunto EA, el ea seleccionar� el per�odo superior e inferior m�s cercano para abrir el pedido

    a modo de ejemplo, cuando adjunto el Ea al gr�fico, el precio actual es 1.5460,
    As� que el per�odo superior es 1.5480
    el per�odo reducido es 1.5440, una vez que el precio llegue a 1 del ea se abrir� la orden,

    Entonces, �alguien podr�a sugerirme c�mo escribir el c�digo l�gico, por favor?

  2. #2

    Cita Iniciado por ;
    Gracias por sus sugerencias, pero creo que no entendi� mi demanda. Digamos que el precio actual es 1.5692, me gustar�a mostrar el segundo d�gito actual. Con este caso de precio actual, me gustar�a mostrar solo 9
    Esto mostrar� solo el 9 o el cuarto car�cter de la serie. Serie de c�digo insertado newprice =StringSubstr(DoubleToStr(1.5692,4),4,1);

  3. #3

    Cita Iniciado por ;
    Use NormalizeDouble(price, 3) para eso.
    Precio actual = 1,5692 precio nuevo = NormalizeDouble (precio, 3) precio nuevo = 1,569 sin embargo, solo quiero mostrar 9, no 1,569

  4. #4

    Cita Iniciado por ;
    Gracias por sus sugerencias, pero creo que no entendi� mi demanda. Digamos que el precio actual es 1.5692, me encantar�a exhibir el �ltimo segundo d�gito. Con este caso de precio actual, me encantar�a exhibir solo 9
    Uso NormalizeDouble(price, 3) para eso.

  5. #5

    Cita Iniciado por ;
    Eso puede ser un poco complicado, pero funciona. C�digo insertado/convertir precio a cadena y agregar 0 precio de cadena =DoubleToStr(1.5432,3) 0;/convertir cadena a double double newprice =StrToDouble(price);
    Gracias por tus sugerencias, pero creo que no entendiste mi requerimiento. Digamos que el precio actual es 1.5692, me encantar�a mostrar el segundo d�gito actual. Para este caso de precio actual, me gustar�a mostrar 9 solo

  6. #6
    He Investigado un EA que Podr�a Operar, abre 2 �rdenes a la vez a Estos precios, Exam�nelo: C�digo Insertado extern Dual TP = 0.003; SL dual externo = 0,003;/ -------------------------------------------------------- ------------------- /| funci�n de inicializaci�n experta |/ -------------------------------------------------------- ------------------- int init()/--/-- return(0);/ -------------------------------------------------------- ------------------- /| funci�n de desinicializaci�n experta |/ -------------------------------------------------------- ------------------- int start() static int tiket_buy, tiket_sell; Dual price_sell, price_buy, SL_sell, SL_buy, TP_sell, TP_buy, vol, distancia, precio; int error, yo; Rejilla doble91;6#93;; Mercado bool est�tico =falso, compra=falso; distancia = 0,004; precio=NormalizarDoble(Oferta,2);/Precio actual redondeado grid#91;0#93;=precio; for(I=1;ilt;6;I ) grilla#91;I#93;=precio distancia*I; OrderSelect(tiket_sell, SELECT_BY_TICKET); Deber�a (OrderCloseTime()!=0) vender=falso; OrderSelect(tiket_buy, SELECT_BY_TICKET); if(OrderCloseTime()! =0) buy=false; should (buy==falsesell==true) OrderDelete(tiket_sell); vender=falso; if(buy==truesell==false) OrderDelete(tiket_buy); comprar=falso; for(I=0;ilt;6;I ) Frecuencias de actualizaci�n(); vol = NormalizarDoble(SaldoCuenta()/10000,1); si(vol==0) vol=0.1; should (Askgt;grid#91;I#93;buy==false) price_buy=grid#91;I#93;; SL_buy= NormalizeDouble(price_buy-SL,Digits); TP_buy= NormalizeDouble(price_buy TP,Digits); tiket_buy = OrderSend(Symbol(),OP_BUYLIMIT,vol, price_buy,50,SL_buy, TP_buy,BUYLIMIT,20000,0,Green); comprar=verdadero; if(Bidlt;grid91;I#93;sell==false) price_sell=grid#91;I#93;; SL_sell= NormalizeDouble(price_sell SL,Digits); TP_sell= NormalizeDouble(price_sell-TP,Digits); tiket_sell = OrderSend(Symbol(),OP_SELLLIMIT,vol,price_sell,50, SL_sell,TP_sell,SELLLIMIT,10000,0,Red); vender = verdadero; if (tiket_selllt;0) error=Obtener�ltimoError(); Imprimir (Error de orden de VENTA: error Oferta = Oferta Precio:, precio_venta, SL:, SL_venta, TP:, TP_venta); if (tiket_buylt;0) error=GetLastError(); Imprimir (Error de orden de COMPRA: error Ask= Ask Price:, price_buy, SL:, SL_buy, TP:, TP_buy); retorno(0); Probado Proporciona algunos errores 0, no entiendo por qu�
    Tal vez alguien podr�a cambiarlo a Repararlo, no entiendo qu� est� mal.

  7. #7

    Cita Iniciado por ;
    Gracias, digamos que el precio actual es 1.5432, �puedo saber c�mo mostrar el �ltimo segundo d�gito que es 3?
    Intente esto: Inserted Code double grid#91;6#93;; doble distancia = 0,004; precio doble=NormalizeDouble(Bid,2);/Precio actual redondeado a 2 d�gitos grid#91;0#93;=price; for(I=1;ilt;6;I ) grid#91;I#93;=precio distancia*Id; Por ejemplo, si Bid es 1.55123 grid[]=1.55, 1.554, 1.558, 1.562, 1.566, 1.56 Y puede utilizar esos precios para abrir pedidos pendientes, por ejemplo.

  8. #8

    Cita Iniciado por ;
    Gracias, digamos que el precio actual es 1.5432, �puedo saber c�mo mostrar el �ltimo segundo d�gito que es 3?
    Esto es un poco complicado pero funciona. C�digo insertado/convertir precio a cadena y agregar 0 precio de serie =DoubleToStr(1.5432,3) 0;/convertir cadena a double double newprice =StrToDouble(price);

  9. #9
    Mhh esto est� copiado, supongo. Pero funcionar�.
    Cita Iniciado por ;
    l�mite superior dual[. .] ; doble Actual = Cerrar[0]; L�mitesuperior[0] = MathCeil(Actual*1000)/1000; for (int I =1;...; I ) L�mitesuperior[I] = L�mitesuperior[0] I * Pips; ObjectCreate(,HLINE...) if(Close[0] gt;= Upperlimit[I]) OrderSend(...)
    Eche un vistazo a MathCeil y MathFloor

  10. #10
    Gracias, digamos que el precio actual es 1,5432, �puedo saber c�mo mostrar el �ltimo segundo d�gito, que es 3?

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Cookies
Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información y política de cookies aquí.