Se necesita tu opinión - página 4

 
angevoyageur:
Estás tratando de engañar a los principiantes engañando tu EA y/o los resultados del backtest de alguna manera, y lo sabes muy bien.

"De alguna manera" ¿Cómo? no hagas acusaciones mientras no sabes lo que estás discutiendo. Ya he dicho que intenta el 100% al no cerrar nada con pérdidas sino esperar a que sea rentable. Las pérdidas flotantes serán gestionadas por los lotes dinámicos y el % de saldo utilizado como lotes con lo que es difícil llegar al margin call.
 
tonny: Aquí está el informe del probador. He omitido los parámetros y el nombre del EA por razones obvias. Compruébalo todo lo que quieras, no tengo nada que ocultar.

Mucho mejor. Mi opinión sobre su sistema es que es demasiado arriesgado. Arriesgado sin embargo es un término relativo, si usted siente que puede vivir con draw-downs relativos del 50% con la posibilidad de soplar la cuenta ??? entonces trade-it. Sin embargo, le aconsejo que ejecute su sistema en el modo de Monte-Carlo para obtener una mejor estadística de la frecuencia de este 50% draw-downs sucede. Y su Risk_Of_Ruin vs su BankRoll etc.

Me acabo de despertar y he visto sus datos, decidí poner algo juntos que podría duplicar los resultados y aquí están los códigos y los resultados a continuación. Nota: En mi 1 ª carrera, se fue a la quiebra. La segunda y tercera corridas se parecen al resultado de abajo:


Basado en mis tres ejecuciones, yo diría que "mi" sistema tiene una probabilidad de 1 en 3 de quebrar 10k dentro del período de tiempo probado. El resultado que está mostrando es sólo un rendimiento estático [positivo] del sistema. Cualquiera que opere con este sistema se preguntaría "¿y si el precio nunca vuelve?". Mi recomendación es que produzca miles de ejecuciones para probar qué tan bien predice su sistema los períodos de rebote. También amplíe el marco de tiempo y pruebe con otros pares.

Códigos escritos apresuradamente y no pensados para el uso de Real_Money. Puede que elimine los códigos más adelante.

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#property copyright "Copyright © Ubzen"
#property link      "https://www.mql5.com/en/users/ubzen"
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#define Magic_Nm 1
#define Scalp_Pi 5
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//extern int MonteCarlo=1;//Optimize 1->100 Equal_100 Random_Runs
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void start(){
    if(!isNewBar()){return;}
    Order_Origination();
    Order_Termination();
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void Order_Origination(){
    if(Count_OrderS_Symb()>0){return;}
    if(!isRange()){return;}
    Order_Send(Symbol(),Random_OT(),Compound());
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void Order_Termination(){
    for(int i=OrdersTotal()-1; i>=0; i--){
        if(!OrderSelect(i,SELECT_BY_POS)){continue;}
        if(OrderMagicNumber()!=Magic_Nm){continue;}
        string Sy=Symbol();
        if(OrderSymbol()!=Sy){continue;}
        if(OrderProfit()<0){continue;}
        double  OpnPrc=OrderOpenPrice();
        double  ClsPrc=OrderClosePrice();
        double  Diff=MathAbs(ClsPrc-OpnPrc);
        double  inPip=p2pips(Sy,Diff);
        int     inInt=p2i(Sy,inPip);
        if(inInt<Scalp_Pi){return;}
        Close_Order_Ticket(OrderTicket());
    }
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool isNewBar(){
    static datetime BarTime;
    datetime MinOpen=iTime(Symbol(),PERIOD_M1,0);
    if(BarTime!=MinOpen){BarTime=MinOpen; return(true);}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Random_OT(){
    static double Seed; if(Seed==0){Seed=GetTickCount();}
    Seed+=0.9; MathSrand(Seed); int OrType=MathRand()%2;
    if(OrType%2==0){return(OP_BUY);}else{return(OP_SELL);}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double Symb_Digit(string Symb){
    return(MarketInfo(Symb,MODE_DIGITS));
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int p2i(string Symb, double X){
    /*Converts Price_2_Integer*/ int SymDigit=Symb_Digit(Symb);
    if(SymDigit%2==0){if(SymDigit==2){int Y=100;}else{Y=10000;}
    }else{if(SymDigit==3){Y=1000;}else{Y=100000;}} return(X*Y);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double p2pips(string Symb, double X){//Points2Pips
    int D=Symb_Digit(Symb); if(D%2==1){X/=10;} return(X);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double p2points(string Symb, double X){//Pips2Points
    int D=Symb_Digit(Symb); if(D%2==1){X*=10;} return(X);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool isRange(){ int Range=10;
    string Sy=Symbol(); int Tf=PERIOD_M5; int Pd=99;
    int Dev=1; int Sh=0; int App=PRICE_LOW; int iDex=0;
    double Band_Up=iBands(Sy,Tf,Pd,Dev,Sh,App,MODE_UPPER,iDex);
    double Band_Dn=iBands(Sy,Tf,Pd,Dev,Sh,App,MODE_LOWER,iDex);
    int iBand_Up=p2i(Sy,Band_Up); int iBand_Dn=p2i(Sy,Band_Dn);
    int Dif=iBand_Up-iBand_Dn;
    int Range2Points=p2points(Sy,Range);
    if(Dif<Range2Points){return(true);}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Count_OrderS_Symb(){
    int Cnt; for(int i=OrdersTotal()-1; i>=0; i--){
        if(!OrderSelect(i,SELECT_BY_POS)){continue;}
        if(OrderMagicNumber()!=Magic_Nm){continue;}
        if(OrderSymbol()!=Symbol()){continue;} Cnt++;}
return(Cnt);}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool Close_Order_Ticket(int Tkt){
    if(!OrderSelect(Tkt,SELECT_BY_TICKET)){return;}
    if(OrderType()>1){return;} if(OrderCloseTime()!=0){return;}
    if(!IsTesting()){while(IsTradeContextBusy()){Sleep(500);}}
    double Ocp=OrderClosePrice(); double Ol=OrderLots();
    bool Res=OrderClose(Tkt,Ol,Ocp,0,0);
return(Res);}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Order_Send(string Symb, int OType, double Lots){
    if(AccountFreeMarginCheck(Symb,OType,Lots)<=0){return;}
    if(GetLastError()==134){return;}

    int Order_Slip=0; color OrColor;
    if(OType==OP_BUY){OrColor=Blue;}
    if(OType==OP_SELL){OrColor=Red;}
    if(OType==OP_BUY){double    P=MarketInfo(Symb,MODE_ASK);}
    if(OType==OP_SELL){         P=MarketInfo(Symb,MODE_BID);}
    
    int OrTicket=OrderSend(
        Symb,OType,Lots,P,Order_Slip,
        0,0,"_",Magic_Nm,0,OrColor);
return(OrTicket);    }
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double Compound(){
    double BrkMinLot=MarketInfo(Symbol(),MODE_MINLOT);
    double BrkMaxLot=MarketInfo(Symbol(),MODE_MAXLOT);
    double BrkLotStp=MarketInfo(Symbol(),MODE_LOTSTEP);
    double LotSize=AccountBalance()/200*0.01;
    if(LotSize<BrkMinLot){LotSize=BrkMinLot;}
    if(LotSize>BrkMaxLot){LotSize=BrkMaxLot;}
    return(LotSize);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
Archivos adjuntos:
 
Personalmente no creo en el scalping. Esto es sólo un proyecto de diversión y quería la opinión de la gente que podría haber habitado aquí antes en el campo de scalping. Algunos niveles de tp y el marco de tiempo hizo la quiebra de la cuenta es por eso que H1 que no es comúnmente un marco de tiempo scalping se utilizó, ya que da un poco de predicción de la tendencia más precisa que los marcos de tiempo de minutos. Probé algunas estrategias de scalping en una cuenta real con pequeños saldos y ganaba hasta un 3000% (de $10 a $300) en menos de dos semanas, pero lo común es que el margen de beneficio tenga la última palabra. Esto proyectó algo que posiblemente podría cuero cabelludo y ganar en el largo plazo, aunque la rentabilidad ha tomado una paliza es por eso que como se puede ver el informe probador hecho sólo alrededor de 100% en dos años que en términos scalping isnt que mucho. Mi punto de vista sobre el scalping ha llegado a que sí se puede ganar dinero con el scalping pero no a largo plazo. El scalping debe ser utilizado como un sistema de "hacer y correr", es decir, depositar $1000 y una vez que se triplique dejar e invertir ese dinero en otro lugar. También he investigado los proveedores de señales de scalping en este servicio sp (no mencionaré debido a los servicios de publicidad) y mientras que algunos beneficios, incluso para un año el resultado final es masiva pérdidas flotantes que por lo general "margen de llamada" la mayoría de las cuentas de los suscriptores. Si uno quiere ganar dinero con el scalping tendría que depositar grandes cantidades de dinero pero utilizar lotes muy pequeños y el resultado final sería menores beneficios que las estrategias de no scalping y ese es el concepto que he probado aquí. En definitiva, mi conclusión es que yo personalmente no prefiero el scalping, pero si lo hace, a continuación, hacer su 300% o 1000% y correr y también recuerde que su corredor sólo podría no le permiten retirar ese dinero como la mayoría de los corredores no les gusta en absoluto comprobar con su corredor para las normas contra el scalping y mientras scalping tratar de adherirse a ellos no cerrar las operaciones demasiado pronto (menos de 10 minutos) con demasiada frecuencia.
 
tonny:

"De alguna manera" ¿Cómo? no hagas acusaciones mientras no sabes lo que estás discutiendo. Ya he dicho que intenta el 100% al no cerrar nada con pérdidas sino esperar a que sea rentable. Las pérdidas flotantes serán gestionadas por los lotes dinámicos y el % de saldo utilizado como lotes, lo que dificulta el ajuste de márgenes.
  • ¿Puede explicarlo?
Errores en los gráficos350
 
Oh, así que yo soy el que puso los errores en mt4? No hay tiempo que se puede probar la estrategia y se obtiene 0 errores no coincidentes lol que realmente no saben lo que están diciendo enterrador parecen
 
tonny:
oh así que yo soy el que puso los errores en mt4? No hay ningún momento en el que puedas hacer una prueba de estrategia y obtengas 0 errores de desajuste lol realmente no sabes lo que estás diciendo enterrador se parecen

Es muy posible tener cero errores en los gráficos... simplemente depende de tus datos y de cómo se hayan construido, por ejemplo crear M1 a MN1 a partir de los mismos datos de ticks debería dar lugar a muy pocos errores...

 
tonny:
oh así que soy el que pone los errores en mt4? No hay tiempo que se pueda probar la estrategia y se obtenga 0 errores de desajuste lol realmente no sabes lo que estás diciendo enterrador se parecen

Hehecho cientos de backtest y nunca he visto este error.

Detodas formas, quieres opinión, la mía es que tu EA sólo puede servir para reventaruna cuenta.

Puede ser que me equivoque al pensar que estás haciendo trampa, lo siento por eso. Si su no son, como su aquí desde enero de 2010, su son muy ingenuos, por lo menos.

 

Es posible hacer una prueba de este tipo

Yo también puedo hacerla

estrategia si alta más alta 18 barras comprar

si baja las 18 barras más bajas vender sin stoploss

con también el seguimiento de este resultado (juego tonto)

Archivos adjuntos:
testresult.zip  46 kb
 
Yer pero este chico está hablando como si yo creara los errores que alguien le diga que viene de datos mt4 no yo
 
En que momento dije que el proyecto es perfecto lo dije muchas veces solo estoy investigando y simplemente pedí una opinión "madura" este gana mucho menos que mis sistemas ya exitosos pero como dije solo estoy explorando sistemas de scalping y estoy abierto a opiniones útiles pero no voy a aceptar insultos y como moderador no deberías comportarte como una mosca doméstica deberías ser más maduro que esto mi resultado de la prueba es natural de mt4 por eso hay algunos errores en los datos de mt4 ya que no he inyectado código en él para alterar nada