buenos dias!!! amigos! camaradas! respeto a ustedes profesionales!!!
necesito ayuda!!! tengo los ojos hinchados, me duele la cabeza, no puedo recetar por lo que mi EA ha movido el StopLoss a los puntos especificados en ganancia al precio actual!!!
Es decir, cuando el precio se movió a un punto determinado, ¡¡¡el StopLoss se movió allí!!!
mi ejemplo no encaja.
#define MagicNumber 123////extern double TakeProfit = 50; //Тейкпрофит ордераexterndouble StopLoss = 50; //Стоплосс ордера externint Delta = 100; //Расстояние от цены для установки ордераexternint Expiration = 100; //Время истечения ордераexterndouble Lot = 0.01; //Объём позицииexternint TrailingLevel = 200; //уровеньexternint TrailingStep = 200;
int last_bar = 0;
//+------------------------------------------------------------------+//| expert start function |//+------------------------------------------------------------------+int start(){
for (int i=0; i<OrdersTotal(); i++) {
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if (OrderType() == OP_BUY) {
if ((OrderStopLoss() < (Bid - TrailingLevel * Point - TrailingStep * Point)) || (OrderStopLoss() == 0)) { // 2bool res=OrderModify(OrderTicket(),OrderOpenPrice(),(Bid - TrailingLevel * Point),OrderTakeProfit(),0,Green);
}
}
}
datetime expiration = TimeCurrent()+3600*Expiration; /// время окончания double BUYLIMITPrice=Ask-Delta*Point; /// это пункты BUYLIMITif (last_bar == Bars) return(0) ;
last_bar = Bars;
if (OrdersTotal() == 0)
{
int ticket=OrderSend(Symbol(),OP_BUYLIMIT,Lot, BUYLIMITPrice,0, BUYLIMITPrice-StopLoss*Point,0 ,"",MagicNumber,expiration,clrNONE);/// это BUYLIMIT
}
//----return(0) ;
}
//-- ------------------------------------------------------------------
¿Cómo puedo configurar el comentario de posición para mostrar el valormágico después del número de la palabra?
Es decir, en este caso: Número 20781
También puedes hacer esto:
int mag=111222333;
string str="Сложение строки и числа ";
str=str+mag;
Alert(str);
Cuando se suman variables de diferentes tipos, el resultado se convierte en el tipo de variable con mayor prioridad. La cadena tiene mayor prioridad que el int
TarasBY: Tiene el tiempo OrderCloseTime() para cerrar la posición perdedora. Desde ella se puede leer la hora a través de TimeCurrent() - OrderCloseTime(). O en barras utilizando iBarShift (NULL, 0, OrderCloseTime()).
Hola, ¿pueden decirme si es posible llamar a un indicador estándar (por ejemplo, MA) desde un EA y que aparezca en el gráfico? No necesito su valor en un punto determinado, es comprensible, pero ¿exactamente debe dibujarse en el gráfico? Gracias
alxm: Hola, ¿podríais decirme si es posible llamar a un indicador estándar (por ejemplo, MA) desde un EA para que se pueda mostrar en el gráfico? No necesito su valor en un punto determinado, es comprensible, pero ¿exactamente debe dibujarse en el gráfico? Gracias
Se puede, sólo con la API, y sólo con los parámetros por defecto. O la biblioteca de Vadim Zhunko. ¿Qué está más cerca de usted? La esencia es la misma - tienes que implementar el paso de parámetros desde el EA al indicador.
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// 7. ФУНКЦИИ ДЛЯ УПРАВЛЕНИЯ ПРОГРАММАМИ MQL4.//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// 7.1. Функция удаляет эксперт с указанного графика. В случае успеха функция возвращает TRUE, иначе - FALSE.bool ServiceDeleteExpert(int hwndChart); // Системный дескриптор окна графика, удаляемого эксперта.//===============================================================================================================================================// 7.2. ФУНКЦИЯ удаляет индикаторы по имени из списка загруженных индикаторов.void ServiceDeleteIndicatorsByName(int hwndChart, // Системный дескриптор окна, куда прикреплен индикатор.int nWindow, // Номер подокна для удаления индикаторов. Если -1, то удаляются индикаторы из всех подокон.string &asIndicatorName[], // Одномерный массив с именами удаляемых индикаторов.int nNumberName); // Количество имён индикаторов в массиве.//===============================================================================================================================================// 7.3. Функция удаляет скрипт с указанного графика. В случае успеха функция возвращает TRUE, иначе - FALSE.bool ServiceDeleteScript(int hwndChart); // Системный дескриптор окна графика, удаляемого скрипта.//===============================================================================================================================================// 7.4. Функция управляет диалоговым окном завершения скрипта и возвращает системный дескриптор диалогового окна завершения скрипта, если окно есть,// иначе - NULL. Функция работает только с русской и английской локализациями.int ServiceDialogScript(int bInstruction); // Команда для диалогового окна завершения скрипта: TRUE - завершить скрипт, FALSE - не завершать скрипт.//===============================================================================================================================================// 7.5. Функция получает имена индикаторов из списка загруженных индикаторов.// В случае успеха функция возвращает количество индикаторов в указанных подокнах параметром "nWindow", иначе ноль.int ServiceGetNamesIndicators(int hwndChart, // Системный дескриптор окна, куда прикреплен индикатор.int nWindow, // Номер подграфика. Если -1, то считываются имена индикаторов из всех подокон.string &asIndicatorName[], // Одномерный строковый массив для приёма имён индикаторов.// Массив должен быть инициализирован разными значениями в каждой ячейке!// Это особенность инициализации строковых массивов в MQL4.int nNumberName); // Размер массива "asIndicatorName[]" для приёма имён индикаторов.//===============================================================================================================================================// 7.6. Функция возвращает TRUE, если окно свойств эксперта открыто, иначе - FALSE.bool ServiceIsPropertiesExpert(string sNameExpert); // Имя эксперта, для которого контроллируется открытие окна.//===============================================================================================================================================// 7.7. Функция открывает окно списка индикаторов. Функция ожидает открытия окна в течении 2,5 секунд. Если окно не появилось в течении этого времени,// функция возвращает FALSE.bool ServiceListIndicators(int hwndChart); // Системный дескриптор окна графика, на котором вызывается окно списка индикаторов.//===============================================================================================================================================// 7.8. Функция загружает на указанный график пользовательский индикатор по его имени.void ServiceLoadCustomIndicator(int hwndChart, // Системный дескриптор окна графика, куда загружается индикатор.string sNameIndicator, // Имя загружаемого индикатора.int bOK); // Подтверждение запуска индикатора, при наличии диалогового окна свойств индикатора.// TRUE - автонажатие на кнопку "OK" разрешено, FALSE - автонажатие на кнопку "OK" запрещено.//===============================================================================================================================================// 7.9. Функция загружает на указанный график эксперт по его имени.void ServiceLoadExpert(int hwndChart, // Системный дескриптор окна графика, куда загружается эксперт.string sNameExpert, // Имя загружаемого эксперта.int bOK); // Подтверждение запуска эксперта, при наличии диалогового окна свойств эксперта.// TRUE - автонажатие на кнопку "OK" разрешено, FALSE - автонажатие на кнопку "OK" запрещено.//===============================================================================================================================================// 7.10. Функция загружает на указанный график скрипт по его имени.void ServiceLoadScript(int hwndChart, // Системный дескриптор окна графика, куда загружается скрипт.string sNameScript, // Имя загружаемого скрипта.int bOK); // Подтверждение запуска скрипта, при наличии диалогового окна свойств скрипта. Скрипт может не иметь окна свойств!// При использовании функции для загрузки скрипта из скрипта на текущем графике параметр не работает из-за// невозможности одновременной работы двух скриптов на одном графике.// TRUE - автонажатие на кнопку "OK" разрешено, FALSE - автонажатие на кнопку "OK" запрещено.//===============================================================================================================================================// 7.11. Функция загружает на указанный график стандартный индикатор по его имени.void ServiceLoadStdIndicator(int hwndChart, // Системный дескриптор окна графика, куда загружается индикатор.string sNameIndicator, // Имя загружаемого индикатора.int bOK); // Подтверждение запуска индикатора, при наличии диалогового окна свойств индикатора.// TRUE - автонажатие на кнопку "OK" разрешено, FALSE - автонажатие на кнопку "OK" запрещено.//===============================================================================================================================================
buenos dias!!! amigos! camaradas! respeto a ustedes profesionales!!!
necesito ayuda!!! tengo los ojos hinchados, me duele la cabeza, no puedo recetar por lo que mi EA ha movido el StopLoss a los puntos especificados en ganancia al precio actual!!!
Es decir, cuando el precio se movió a un punto determinado, ¡¡¡el StopLoss se movió allí!!!
Puede, sólo con la API, y sólo con los parámetros por defecto. O la biblioteca de Vadim Zhunko. Lo que está más cerca de ti. La idea es la misma: hay que implementar el paso de parámetros del EA al indicador.
#include <ВКЛ.ФАЙЛ.mqh>
int ot ;
int ht ;
double X ;
double X1 ;
double X2 ;
int start()
{
ot = OrdersTotal();
double value = Bid;
int S = ArrayBsearch(mass, value, WHOLE_ARRAY, 0, MODE_ASCEND);
if (ot==0)
if(Bid == mass[S])
OrderSend(Symbol(),OP_SELL,0.1,Bid ,3,Ask+1000*Point,Ask-300*Point,"jfh",123 );
return;
}
buenos dias!!! amigos! camaradas! respeto a ustedes profesionales!!!
necesito ayuda!!! tengo los ojos hinchados, me duele la cabeza, no puedo recetar por lo que mi EA ha movido el StopLoss a los puntos especificados en ganancia al precio actual!!!
Es decir, cuando el precio se movió a un punto determinado, ¡¡¡el StopLoss se movió allí!!!
mi ejemplo no encaja.
Buenas tardes.
Por favor, avisa. Estoy abriendo una posición:
¿Cómo puedo configurar el comentario de posición para mostrar el valormágico después del número de la palabra?
Es decir, en este caso: Número 20781
También puedes hacer esto:
Cuando se suman variables de diferentes tipos, el resultado se convierte en el tipo de variable con mayor prioridad. La cadena tiene mayor prioridad que el int
Tiene el tiempo OrderCloseTime() para cerrar la posición perdedora. Desde ella se puede leer la hora a través de TimeCurrent() - OrderCloseTime(). O en barras utilizando iBarShift (NULL, 0, OrderCloseTime()).
Gracias.
Hola, ¿podríais decirme si es posible llamar a un indicador estándar (por ejemplo, MA) desde un EA para que se pueda mostrar en el gráfico? No necesito su valor en un punto determinado, es comprensible, pero ¿exactamente debe dibujarse en el gráfico? Gracias
Se puede, sólo con la API, y sólo con los parámetros por defecto.
O la biblioteca de Vadim Zhunko. ¿Qué está más cerca de usted? La esencia es la misma - tienes que implementar el paso de parámetros desde el EA al indicador.
Biblioteca.
buenos dias!!! amigos! camaradas! respeto a ustedes profesionales!!!
necesito ayuda!!! tengo los ojos hinchados, me duele la cabeza, no puedo recetar por lo que mi EA ha movido el StopLoss a los puntos especificados en ganancia al precio actual!!!
Es decir, cuando el precio se movió a un punto determinado, ¡¡¡el StopLoss se movió allí!!!
mi ejemplo no encaja.
¿Qué es lo que no le gusta?
Puede, sólo con la API, y sólo con los parámetros por defecto.
O la biblioteca de Vadim Zhunko. Lo que está más cerca de ti. La idea es la misma: hay que implementar el paso de parámetros del EA al indicador.
Biblioteca.
Es decir, no funcionará por medios estándar. Gracias.
¡¡¡Buena gente!!!
Ayúdame a encontrar un error. Estoy aprendiendo sobre Arrays.
He creado una matriz en un archivo de inclusión.
Puse una referencia al archivo de inclusión en mi Asesor Experto.
No puedo entender por qué.
En los códigos de error del enlace de localización de archivos
http://clip2net.com/s/jkTd89
Gracias.
¡¡¡Buena gente!!!
Ayúdame a encontrar un error. Estoy aprendiendo sobre Arrays.
He creado una matriz en un archivo de inclusión.
Puse una referencia al archivo de inclusión en mi Asesor Experto.
No puedo entender por qué.
En los códigos de error del enlace de localización de archivos
http://clip2net.com/s/jkTd89
Gracias.