Mostrando entradas con la etiqueta Pabpozzi.. Mostrar todas las entradas
Mostrando entradas con la etiqueta Pabpozzi.. Mostrar todas las entradas

martes, 15 de septiembre de 2009

Nueva version de pabpozzi.

Bien os adjunto los nuevos archivos para el indicador, espero que os sirva, he corregido algunos errores que tenia la versión anterior, además el nuevo indicador almacena los datos en un archivo.

Cuando adjuntas el asesor experto, en la ventana de entradas teneis una variable que se llama estrategia, esta variable se usa para dar un nombre al archivo de la estrategia. Este archivo se creará en la carpeta experts/files/nombredelaestrategia.csv , con este archivo se pueden exportar datos a una hoja de excel, yo uso openoffice no se si funcionará con microsoft.

Por último, os comento donde debéis colocar los archivos:


Espero que os sea de utilidad.

Saludos, que tengais un buen trading.

viernes, 11 de septiembre de 2009

Indicador mejorado.

Bien, ayer hice un indicador a todo correr, mal asunto ese.

Pues dejo aquí una mejora del mismo, además le voy a poner un nombre en honor al que me dío la idea, así que si no le importa Sr. le llamaré pabpozzi.

No cuelgo el código porque se hace muy tedioso, así que tan solo dejo una imagen del indicador, así como los enlaces correspondientes a la versión pabpozzi.



Enlaces de descarga:


Saludos a todos.

jueves, 10 de septiembre de 2009

El margen libre.

Contestando al comentario del señor Anonimo, manuales del metatrader no dispongo de ellos, me apoyo en las explicaciones de las funciones que trae el programa, en la subcarpeta de Dictionary, por supuesto estan en ingles.

Si te vale unos manuales rudimentarios pincha en el siguiente enlace e iras a un blog que tiene dos manuales básicos traducidos al español.

Programado en Forex.

A tu otra cuestion, mira la función:

double AccountFreeMargin( )

No se si te vale para lo que tú deseas.

Te dejo el código para que lo compiles del siguiente indicador, si modificas la variable esquina puedes dibujarlo en la esquina superior, inferior, derecha o izquierda. Al final dejo un enlace desde donde te puedes bajar el indicador.

//+------------------------------------------------------------------+
//| Margen libre.mq4 |
//| Copyright © 2009, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"

#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
extern int esquina=2;
double margenlibre;
double maximaganancia;
double maximaperdida;
double inicio;

int init()
{
//---- indicators
margenlibre=AccountFreeMargin();
inicio=margenlibre;
maximaganancia=0;
maximaperdida=0;

//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
//----

//if(Fun_NuevaBarra())
// {
if(AccountFreeMargin() >= margenlibre)
maximaganancia=MathAbs(AccountFreeMargin()-margenlibre);
if(AccountFreeMargin() <= margenlibre) maximaperdida=MathAbs(AccountFreeMargin()-margenlibre); // } ObjectDelete("LabelMargen"); ObjectCreate("LabelMargen", OBJ_LABEL, 0,0,0,0,0); ObjectSet("LabelMargen", OBJPROP_CORNER, esquina); ObjectSet("LabelMargen", OBJPROP_XDISTANCE, 70); ObjectSet("LabelMargen", OBJPROP_YDISTANCE, 10); ObjectSet("LabelMargen",OBJPROP_COLOR,Red); ObjectSetText("LabelMargen","Margen libre",10,"Arial",Red); ObjectDelete("Margenlibre"); ObjectCreate("Margenlibre", OBJ_LABEL, 0,0,0,0,0); ObjectSet("Margenlibre", OBJPROP_CORNER, esquina); ObjectSet("Margenlibre", OBJPROP_XDISTANCE, 170); ObjectSet("Margenlibre", OBJPROP_YDISTANCE, 10); ObjectSet("Margenlibre",OBJPROP_COLOR,Red); ObjectSetText("Margenlibre",DoubleToStr(AccountFreeMargin(),4),10,"Arial",Red); ObjectDelete("LabelMaximaganancia"); ObjectCreate("LabelMaximaganancia", OBJ_LABEL, 0,0,0,0,0); ObjectSet("LabelMaximaganancia", OBJPROP_CORNER, esquina); ObjectSet("LabelMaximaganancia", OBJPROP_XDISTANCE, 70); ObjectSet("LabelMaximaganancia", OBJPROP_YDISTANCE, 30); ObjectSet("LabelMaximaganancia",OBJPROP_COLOR,Red); ObjectSetText("LabelMaximaganancia","Max. ganancia",10,"Arial",Green); ObjectDelete("Maximaganancia"); ObjectCreate("Maximaganancia", OBJ_LABEL, 0,0,0,0,0); ObjectSet("Maximaganancia", OBJPROP_CORNER, esquina); ObjectSet("Maximaganancia", OBJPROP_XDISTANCE, 170); ObjectSet("Maximaganancia", OBJPROP_YDISTANCE, 30); ObjectSet("Maximaganancia",OBJPROP_COLOR,Green); ObjectSetText("Maximaganancia",DoubleToStr(maximaganancia,2) ,10,"Arial",Green); ObjectDelete("LabelMaximaperdida"); ObjectCreate("LabelMaximaperdida", OBJ_LABEL, 0,0,0,0,0); ObjectSet("LabelMaximaperdida", OBJPROP_CORNER, esquina); ObjectSet("LabelMaximaperdida", OBJPROP_XDISTANCE, 70); ObjectSet("LabelMaximaperdida", OBJPROP_YDISTANCE, 50); ObjectSet("LabelMaximaperdida",OBJPROP_COLOR,Red); ObjectSetText("LabelMaximaperdida","Max. perdida",10,"Arial",Red); ObjectDelete("Maximaperdida"); ObjectCreate("Maximaperdida", OBJ_LABEL, 0,0,0,0,0); ObjectSet("Maximaperdida", OBJPROP_CORNER, esquina); ObjectSet("Maximaperdida", OBJPROP_XDISTANCE, 170); ObjectSet("Maximaperdida", OBJPROP_YDISTANCE, 50); ObjectSet("Maximaperdida",OBJPROP_COLOR,Red); ObjectSetText("Maximaperdida",DoubleToStr(maximaperdida,4),10,"Arial",Red); ObjectDelete("Labelinicio"); ObjectCreate("Labelinicio", OBJ_LABEL, 0,0,0,0,0); ObjectSet("Labelinicio", OBJPROP_CORNER, esquina); ObjectSet("Labelinicio", OBJPROP_XDISTANCE, 70); ObjectSet("Labelinicio", OBJPROP_YDISTANCE, 70); ObjectSet("Labelinicio",OBJPROP_COLOR,Red); ObjectSetText("Labelinicio","Inicio",10,"Arial",White); ObjectDelete("Inicio"); ObjectCreate("Inicio", OBJ_LABEL, 0,0,0,0,0); ObjectSet("Inicio", OBJPROP_CORNER, esquina); ObjectSet("Inicio", OBJPROP_XDISTANCE, 170); ObjectSet("Inicio", OBJPROP_YDISTANCE, 70); ObjectSet("Inicio",OBJPROP_COLOR,Red); ObjectSetText("Inicio",DoubleToStr(inicio,2),10,"Arial",Red); //---- return(0); } //+++++++ //Funcion para calcular una nueva vela bool Fun_NuevaBarra() { bool BarraNueva; static datetime NuevaHora=0; // Deteccion nueva hora BarraNueva=false; // 0 - misma vela ; 1- vela nueva if(NuevaHora!=Time[0]) // Si el hora es cero comienza vela { NuevaHora=Time[0]; BarraNueva=true; //Alert("Barra nueva"); //Avisa de una barra nueva } return(BarraNueva) ;
}
//+------------------------------------------------------------------+


Descargar el indicador: Saludos a todos.

Nota: Es un indicador y como tal se deberá colocar en la carpeta indicators.