Спасибо за комментарий.
Я попробовал, как показано ниже, теперь рынок закрыт, играет 'timeout.wav'. Но я не уверен, что 'ok.wav' будет играть для нового ордера или нет?
Не могли бы вы дать мне знать, пожалуйста?
if ( expression )
{
...
} //---if Close
if ( _ticket > 0 )
{
PlaySound( "ok" );
} //---if Close
//---
if ( _ticket < 0 )
{
PlaySound( "timeout.wav" );
} //---if Close
Спасибо.
Замените на функцию печати и запустите ее в тестере.
Из того, что я вижу, все правильно.
Вы можете использовать -1 вместо <0, но результат будет аналогичным.
ХОРОШО! Спасибо. Я попробую это сделать в понедельник.
//--- второй раз редактировалось
Работает хорошо.
Вы можете увидеть коды моего "тестового" советника. Мне нужна помощь, пожалуйста.
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;
}
Спасибо!
//---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
Это не функция OnChartEvent
Это
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)
{
//
}
кажется, что все в порядке, но убедитесь, что сам lotstep не опускается ниже 0,01
Но количество не уменьшается, я его не видел.
Где вы ожидаете его увидеть?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте,
Я пытаюсь использовать код 'else {}', когда рынок закрывается, просто он может играть.
Но два звука смешиваются, где проблема, пожалуйста?
if( sparam == "SELL GROUP" )
{
ObjectSetInteger ( 0, "SELL GROUP", OBJPROP_STATE, false );
_ticket = Order ( "SELL GROUP" );
PlaySound ( "ok.wav" );
}
else
{
PlaySound( "timeout.wav" );
}
Best.
(Английский не является моим родным языком)