Максисальная длина названия символа на FOREX - страница 12

 
prostotrader:

Вы правы, при перезагрузке ChartID изменится, следовательно ничего не нужно сохранять в Глобальные переменные терминала.

ээ... то есть советник потеряет все свои ордера-позиции, открытые до этого, и это нормально?

 
Taras Slobodyanik:

ээ... то есть советник потеряет все свои ордера-позиции, открытые до этого, и это нормально?

При поиске ордера по магику, Вы будете знать текущий магик, следовательно все другие магики от предыдущего(щих).

Есть функция IsMyMagic()

 
Fast528:

Каждая валюта имеет свой трехзначный код, где первые две буквы означают страну, а последняя третья буква – название самой валюты (dollar — D, franc — F, pound — P).

Регламентируется такой порядок трехзначного обозначения валют специальным стандартом ISO 4217. Международная организация по стандартизации в 1978 году рекомендовала всем странам использовать трехбуквенные и трехзначные коды валют.

Чё серьёзно?

где первые две буквы означают страну, а последняя третья буква – название самой валюты

И как по вашему называется валюта еврозоны? EUR -  EU R
 
prostotrader:

При поиске ордера по магику, Вы будете знать текущий магик, следовательно все другие магики от предыдущего(щих).

следовательно всё, что открыто перед перезапуском не имеет значения...

Да, тогда айди чарта подойдет.
Можно к этому номеру просто добавлять счетчик текущих ордеров, и не заморачиваться с контрольными суммами и битовыми сдвигами.

 
Taras Slobodyanik:

следовательно всё, что открыто перед перезапуском не имеет значения...

Да, тогда айди чарта подойдет.
Можно к этому номеру просто добавлять счетчик текущих ордеров, и не заморачиваться с контрольными суммами и битовыми сдвигами.

Можно вообще не заморачиваться, как уже предлагалось

Input ulong = ЧИСЛО;

Нужно просто вести учёт этого ЧИСЛА для каждого советника - разное, оставляя два младших байта нулевыми,

тогда для КАЖДОГО советника можно будет использовать 65535 магиков 

input ulong StMagic = 1; //Установка магика
ulong master_magic;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   master_magic = StMagic<<16;   
   
//---
   return(INIT_SUCCEEDED);
  }

Соответственно для следующего советника

input ulong StMagic = 2; //Установка магика
Не забывая сохранять настройки
 
Nikolay Demko:

Чё серьёзно?

И как по вашему называется валюта еврозоны? EUR -  EU R

а еще интересно, что значит буква Б? )  
EURRUB - RU B

 
Taras Slobodyanik:

а еще интересно, что значит буква Б? )  
EURRUB - RU B

Даже страшно подумать ))

 
prostotrader:

Можно вообще не заморачиваться, как уже предлагалось

Input ulong = ЧИСЛО;

Нужно просто вести учёт этого ЧИСЛА для каждого советника - разное, оставляя два младших байта нулевыми

Соответственно для следующего советника

Не забывая сохранять настройки

Перегружаете терминал, или просто закрыли чарт, открываете снова.

У вас есть история торговли и советник (должен) опознавать свои сделки. Ну это нормально если он понимает что это именно он открывал.

И так ID чарта сменился: как советник запущенный на данном чарте должен понять что это его прошлые сделки? магик то у него теперь другой.

 
Nikolay Demko:

Перегружаете терминал, или просто закрыли чарт, открываете снова.

У вас есть история торговли и советник (должен) опознавать свои сделки. Ну это нормально если он понимает что это именно он открывал.

И так ID чарта сменился: как советник запущенный на данном чарте должен понять что это его прошлые сделки? магик то у него теперь другой.

Читайте внимательно!