asesor experto - preguntas varias

 

Hola,

Trato de usar el código 'else {}' cuando el mercado cerrado sólo podría jugar.

Pero dos sonidos mezclados, ¿dónde está el problema, por favor?

// SELL
if( sparam == "SELL GROUP" )
{
    ObjectSetInteger ( 0, "SELL GROUP", OBJPROP_STATE, false );
    _ticket = Order  (    "SELL GROUP"                       );

    PlaySound ( "ok.wav" );
}
else
{
    PlaySound( "timeout.wav" );
}

Lo mejor.

(El inglés no es mi lengua materna)

 
timeout.wav sonará para cualquier/todo sparam que no sea "SELL GROUP".
 

Gracias por el comentario.

He intentado como abajo, ahora el mercado está cerrado 'timeout.wav' jugando. Pero no estoy seguro de que 'ok.wav' se reproduzca para una nueva orden o no.

¿Puede usted decirme, por favor?

int _ticket = 0;
if ( expression )
{
...  
}   //---if Close

if ( _ticket > 0 )
{
    PlaySound( "ok" );
}   //---if Close
//---
if ( _ticket < 0 )
{
    PlaySound( "timeout.wav" );
}   //---if Close

Gracias.

 

Reemplazar con la función de impresión y ejecutarlo en el probador.

Por lo que veo es correcto.

Podrías usar -1 en lugar de <0 pero el resultado sería similar.

 

¡BIEN! Gracias. Lo probaré el lunes.

//--- segunda vez editado

Funciona bien.

 
En realidad quiero añadir la función 'OrderLots ' a mi EA principal de TradePanel pero antes necesito probarlo .
Así que trato de cuando hago clic en el botón '-' entonces lote disminuirá, pero no funciona para mí.

Puedes ver los códigos de mi EA de prueba. Necesito una ayuda, por favor.

int             i                                                ,
                int_example         = 1                          ;
double          _lotStep            = 0.01                       ,
                _lot                = 0.09                       ;
string          _prefix             = "| TP -"                   ,
                _edtLot             = _prefix + " Lot"           ,
                _btnLotMinus        = _prefix + " Button Minus"  ;

//---init
_PanelDraw();

//---OnChartEvent
if ( sparam == _btnLotMinus )
{
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_STATE, false );
    _lot = _lot - _lotStep;
    if ( _lot <= 0 )
         _lot = _lotStep;

    Print( "| Just You Clicked Button Lot Minues" );
    return;
}   //---if Close

//---
void _PanelDraw()
{
//---Button
    ObjectCreate    ( 0, _btnLotMinus, OBJ_BUTTON         , 0, 0, 0   );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_XDISTANCE  , 16        );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_YDISTANCE  , 16        );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_XSIZE      , 80        );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_YSIZE      , 32        );
    ObjectSetString ( 0, _btnLotMinus, OBJPROP_TEXT       , "-"       );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_FONTSIZE   , 20        );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_STATE      , false     );
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_SELECTABLE , false     );
    Print( "I am Minus" );

//---Lot
    ObjectCreate    ( 0, _edtLot,      OBJ_EDIT           , 0, 0, 0   );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_COLOR      , Red       );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_XDISTANCE  , 16        );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_YDISTANCE  , 56        );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_XSIZE      , 80        );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_YSIZE      , 32        );
    ObjectSetString ( 0, _edtLot,      OBJPROP_TEXT       , "Lot: " + DoubleToStr( _lot, 2 ) );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_FONTSIZE   , 12        );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_STATE      , true      );
    ObjectSetInteger( 0, _edtLot,      OBJPROP_READONLY   , true      );
    Print( "I am Minus" );
    //---
    return;
}

Gracias.

 

//---OnChartEvent
if ( sparam == _btnLotMinus )
{
    ObjectSetInteger( 0, _btnLotMinus, OBJPROP_STATE, false );
    _lot = _lot - _lotStep;
    if ( _lot <= 0 )
         _lot = _lotStep;

    Print( "| Just You Clicked Button Lot Minues" );
    return;
}   //---if Close

Esta no es la función OnChartEvent

Esta es

void OnChartEvent(const int id,         // Event ID
                  const long& lparam,   // Parameter of type long event
                  const double& dparam, // Parameter of type double event
                  const string& sparam  // Parameter of type string events
  );

   if(id==CHARTEVENT_OBJECT_CLICK)

     {

     //

     }


 

Keith Watford:

Esta no es la función OnChartEvent

Esto es

Todavía necesito ayuda sobre#5

---

¿Pero por qué no lo escribí? Porque se necesitan más espacios...

De todos modos gracias.

 

parece estar bien, pero asegúrese de que el propio lotstep no baje de 0,01

 
Pero el lote no disminuye no lo vi.
 
Max Enrik:
Pero el lote no disminuye no lo vi.

¿Dónde esperas verlo?

Print( "| Just You Clicked Button Lot Minues" );
¿Esto se imprime?