Помощь в кодировании - страница 372

 
AtApi:
Спасибо mladen! Проблема в том, что этот способ не удаляет строку из массива, а просто меняет значение строки на "remove" как для оригинального, так и для дублирующего значения... так что если я захочу позже отфильтровать их, я удалю и оригинальное значение... надеюсь, я понятно объяснил...

Это не так.

Вот почему условие if (myArray != "remove ") находится в последней строке этого кода. Только значения, отличные от "remove", копируются в новый массив после корректировки размера нового массива (добавления нового элемента).

 

Хорошо, я проверю это и дам вам знать!

всегда спасибо от всего сердца!!!

 
mladen:
Не работает Поэтому условие if (myArray != "remove") находится в последней строке этого кода. Только значения, отличные от "remove", копируются в новый массив после корректировки размера нового массива (добавления нового элемента).

Это работает отлично mladen! спасибо большое!!!

 

Mladen

Ошибки nicetrader1.03 ea исчезли..... поэтому я взял его обратно в тестер.Он не мог торговать, но давал ошибки.Я приложил часть ошибки из журнала ниже:

Я думаю, что это результат функции трейлинг-стопа, которую мы добавили, потому что ot торговал до этого,,,, просто хочу совершенствовать шаблон для всех нас здесь.... любезно помогите мне reajust трейлинг-стоп для работы с шаблоном.Я создал 3 внешние переменные для трейлинг-ордера, Trailingstop, Trailingstart и Trailingstep.TrailingStart - порог прибыли, который должен быть достигнут до активации трейлинг-стопа; TrailingStop - количество пунктов, которое мы будем отслеживать от новых максимумов прибыли; и TrailingStep - количество новых пунктов, которые должны быть получены до того, как стоп будет увеличен на величину прироста.

mladen:
Эти предупреждения удалены: newnicetrader_1.03.mq4
Файлы:
errorimage.png  212 kb
 
Mastercash:
Mladen

Ошибки nicetrader1.03 ea исчезли..... поэтому я вернул его в тестер. Он не мог торговать, но выдавал ошибки. Я приложил часть ошибок из журнала ниже:

Я думаю, что это результат функций трейлинг-стопа, которые мы добавили, bcos ot торговал до этого,,,, просто хочу усовершенствовать шаблон для всех нас здесь.... пожалуйста, помогите мне изменить трейлинг-стоп, чтобы работать с шаблоном.Я создал 3 внешние переменные для трейлинг-ордера, Trailingstop, Trailingstart и Trailingstep.TrailingStart - порог прибыли, который должен быть достигнут до активации трейлинг-стопа; TrailingStop - количество пунктов, которое мы будем отслеживать от новых максимумов прибыли; и TrailingStep - количество новых пунктов, которые должны быть получены до того, как стоп будет увеличен на величину прироста.

Ошибка 134 означает: недостаточно денег. Размер лота ордера слишком велик для капитала счета, Это не результат добавления каких-либо торговых функций, поскольку я не добавлял никаких торговых функций вообще в этот советник - если вы добавили такие функции, пожалуйста, пересмотрите их, поскольку я понятия не имею, какие изменения в коде были сделаны вами.

 

Как я могу рассчитать общую прибыль по текущим открытым ордерам?

 
apprentice coder:
Как я могу рассчитать общую прибыль по текущим открытым ордерам?

ученик кодера

Вы можете сделать что-то вроде этого (свопы и комиссии включены, поэтому в результате получается точная прибыль) :

double colectProfit()

{

double profitSoFar=0;

//

//

//

//

//

for (int i=OrdersTotal()-1; i>=0; i--)

{

OrderSelect(i, SELECT_BY_POS,MODE_TRADES);

if (!TrailAllSymbols)

if (OrderSymbol()!=Symbol()) continue;

if (OrderMagicNumber() < magicNumberfrom) continue;

if (OrderMagicNumber() > magicNumberto) continue;

if (OrderType()==OP_BUY || OrderType()==OP_SELL)

profitSoFar += (OrderProfit()+OrderSwap()+OrderCommission());

}

return(profitSoFar);

}

 
mladen:
ученик кодера

Вы можете сделать что-то вроде этого (свопы и комиссии включены, так что в результате получается точная прибыль) :

double colectProfit()

{

double profitSoFar=0;

//

//

//

//

//

for (int i=OrdersTotal()-1; i>=0; i--)

{

OrderSelect(i, SELECT_BY_POS,MODE_TRADES);

if (!TrailAllSymbols)

if (OrderSymbol()!=Symbol()) continue;

if (OrderMagicNumber() < magicNumberfrom) continue;

if (OrderMagicNumber() > magicNumberto) continue;

if (OrderType()==OP_BUY || OrderType()==OP_SELL)

profitSoFar += (OrderProfit()+OrderSwap()+OrderCommission());

}

return(profitSoFar);

}

Понятно

Я думал что-то в этом духе, но своп иногда давал неверные результаты. Спасибо

 

Да, но начинается эта ошибка, когда я добавил трейлинг-стоп, который я потратил время, чтобы объяснить.Это ea нужно трейлинг stp, для меня это похоже на то, что тот, который я добавил, который является первой функцией в верхней части кода, не работает .Пожалуйста, помогите, добавив лучшую функцию трейлинга.

mladen:
Ошибка 134 означает: недостаточно денег. Размер лота ордера слишком велик для капитала счета, Это не результат добавления каких-либо торговых функций, поскольку я не добавлял никаких торговых функций вообще в этот советник - если вы добавили такие функции, пожалуйста, пересмотрите их, поскольку я понятия не имею, какие изменения в коде были сделаны вами.
[Deleted]  

Это сообщение для Mladen, привет, сэр, это то, что я получил, когда я пытался compli expert в meta editor, fisher m11 ea, что это значит? Спасибо!

'Fisher M11 ea.mq4' Fisher M11 ea.mq4 1 1

'stdlib.mqh' stdlib.mqh 1 1

'stderror.mqh' stderror.mqh 1 1

функция должна возвращать значение Fisher M11 ea.mq4 94 5

переменная 'cerrada' не используется Fisher M11 ea.mq4 78 8

переменная 'цена' не используется Fisher M11 ea.mq4 77 10

переменная 'ticket' не используется Fisher M11 ea.mq4 76 7

объявление 'c' скрывает глобальное объявление в строке 57 Fisher M11 ea.mq4 191 82

переменная 'i' не используется Fisher M11 ea.mq4 356 18

объявление 'slippage' скрывает глобальное объявление в строке 60 Fisher M11 ea.mq4 531 12

Объявление 'magic' скрывает глобальное объявление в строке 14 Fisher M11 ea.mq4 532 28

возвращаемое значение 'OrderSelect' должно быть проверено Fisher M11 ea.mq4 684 4

возвращаемое значение 'OrderSelect' должно быть проверено Fisher M11 ea.mq4 791 4

не все пути управления возвращают значение Fisher M11 ea.mq4 801 1

объявление 'slippage' скрывает глобальное объявление в строке 60 Fisher M11 ea.mq4 841 12

объявление 'magic' скрывает глобальное объявление в строке 14 Fisher M11 ea.mq4 842 28

возвращаемое значение 'OrderSelect' должно быть проверено Fisher M11 ea.mq4 1010 4

не все пути управления возвращают значение Fisher M11 ea.mq4 1020 1

возвращаемое значение 'OrderSelect' должно быть проверено Fisher M11 ea.mq4 1093 4

возвращаемое значение 'OrderSelect' должно быть проверено Fisher M11 ea.mq4 1187 3

объявление 'slippage' скрывает глобальное объявление в строке 60 Fisher M11 ea.mq4 1267 11

возвращаемое значение 'OrderSelect' должно быть проверено Fisher M11 ea.mq4 1401 3

0 ошибка(и), 19 предупреждение(и) 1 20