Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 487

 

Да разницы особой нет, или я чего то не знаю ? :-)

Может быть автору так удобнее. Типо как начинается счеты? 1.2.3.4.5.6.7.8.9.

А В языке программирование счет начинается с 0.1.2.3.4.5.6

Поэтому чтобы новичок не путался автор решил сделать начальный отсчет с 1, но при этом весь алгоритм считает с 0.

Ошибок нет, просто так наверное было удобнее.

 
Добрый день ! Не устанавливается мт4, в конце загрузки терминала выдаёт ошибку ( terminal.exe - обнаружена ошибка,приложение будет закрыто) ! Железо старое- Microsoft Windows XP Professional 2002 service pack 3, Intel(R) Celeron(TM) CPU 1200 MHz 1.20 ГГц. 384 МБ ОЗУ-, но до нового года(ноябрь-декабрь) устанавливалось всё нормально,а теперь ни в какую, с инстафорекс(версия 5.0.0.804) грузится и потом выдаёт ошибку с других сайтов вообще не грузится ничего ! Антивирус удалил,предыдущие терминалы тоже удалил с помощью рево унинсталер. Возможно, что это из-за того,что я недавно по останавливал некоторые локальные службы(какие не помню) ???
 
Vladon:

это как?

а это:

никогда не выполниться

поэтому:

всегда будет работать при каждом ордере.

ВЫВОД: все неправильно.

Вашу функцию надо продумывать, быстрого ответа у меня нет.

но для начала хотя бы так:

Я только учусь,по этому много не знаю.мне интересно написать функцию закрытия ордеров по проценту от депозита.попробовал вашу версию.закрывает только положительный профит,а как сделать чтоб он закрывал отрицательный профит,то есть не профит.Я не могу понять логигу операторов какие можно в этой функции использовать ?
 
che07:
Добрый день ! Не устанавливается мт4, в конце загрузки терминала выдаёт ошибку ( terminal.exe - обнаружена ошибка,приложение будет закрыто) ! Железо старое- Microsoft Windows XP Professional 2002 service pack 3, Intel(R) Celeron(TM) CPU 1200 MHz 1.20 ГГц. 384 МБ ОЗУ-, но до нового года(ноябрь-декабрь) устанавливалось всё нормально,а теперь ни в какую, с инстафорекс(версия 5.0.0.804) грузится и потом выдаёт ошибку с других сайтов вообще не грузится ничего ! Антивирус удалил,предыдущие терминалы тоже удалил с помощью рево унинсталер. Возможно, что это из-за того,что я недавно по останавливал некоторые локальные службы(какие не помню) ???
У вас процессор скорее всего не поддерживает набор команд SSE2 - проверьте
 
artmedia70:
У вас процессор скорее всего не поддерживает набор команд SSE2 - проверьте


А как это сделать ?
 
denis77515:
Я только учусь,по этому много не знаю.мне интересно написать функцию закрытия ордеров по проценту от депозита.попробовал вашу версию.закрывает только положительный профит,а как сделать чтоб он закрывал отрицательный профит,то есть не профит.Я не могу понять логигу операторов какие можно в этой функции использовать ?


Ок

все учатся, так что норм.

extern double Percent = 2.0;
extern int Slippage = 2;
double stop;

void OnStart()
{

if (Digits == 3 || Digits == 5)
{
Slippage *= 10;
}

for(int i = OrdersTotal()-1; i>=0; i--)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol()) 
{
if (OrderType() == OP_BUY || OrderType() == OP_SELL)
{
if(OrderProfit()<=0-AccountBalance()/100*Percent && OrderProfit()<0)

{
if(OrderType() == OP_SELL)OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,Aqua);
if(OrderType() == OP_BUY)OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,Aqua);
}//if(ostop<=AccountBalance())
}//if(ostop==AccountBalance()/100*Percent)
}//if (OrderSymbol() == Symbol() )
}//if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
}//for(int i = OrdersTotal()-1; i>=0; i--)
return;
}//void OnStart()
//+-----------------------------------------------------------------
 
Vladon:


Ок

все учатся, так что норм.


Спасибо бальшое,опробовал все работает.
 
artmedia70:
У вас процессор скорее всего не поддерживает набор команд SSE2 - проверьте


Да,не поддерживает, но почему тогда пару месяцев назад всё работало ? Получается надо менять компьютер или как?
 
никак не могу понять - это число:
8,01129039727145009060093343395e+8328
если представить число: 8,01129039727145009060093343395e+8328
как: 1 и 8328 нолей сразу после единицы ( без запятой ) и умножить на 8 - это будет правильно ?
или по другому читается это число ?

не могу понять, потому что меня вводит в заблуждение запятая после 8.

Или по другому - как представить число: 8,01129039727145009060093343395e+8328 как одно целое чмсло, чтобы в этом числе отсутствовала запятая.

примечание: цифры стоящие после запятой из вышеприведенного числа можно представить как ноли.

 
che07:

Да,не поддерживает, но почему тогда пару месяцев назад всё работало ? Получается надо менять компьютер или как?

Вы знаете сколько лет назад появился этот набор команд? Конечно же, ваш дедушка ещё его застал, спасая зайцев от потопа.

Причина обращения: