Автоматическое создание признака принадлежности позиции к некоторой пачке позиций - страница 5

 
tara:
Хорошо-бы 512, но это - максимально возможный размер под любую структуру вообще. 
Мне лучше в евро! Структуры, повторяю, излишество!
 
AlexeyVik:

Вот этой доливке и назначь магиком тикет того ордера который он локирует. И в пачке будет ордер тикет = т1; магик = м; и лок-ордер тикет = т2; магик = т1 

Согласен. Логично.

 

AlexeyVik:

А почему не может быть пачка из одного ордера?

 Это как? Пачка она и есть пачка. Ведь пачка сигарет не может быть одной сигаретой... Верно? А пачка кофе - зерном.

 

AlexeyVik:

Ну не открыт и что? он ведь принадлежит этой пачке? или нет?

 Принадлежит или нет это другой вопрос. Суть в том, что можно при адекватном алгоритме если действие уже осуществлено не перепроверять его по 10 раз. А можно постоянно тыкаться и шерстить все пачки ордеров.

 

AlexeyVik:

А вот тут как раз и спасает массив с тикетами ордеров. Открылся ордер, увеличили размер массива, дополнили его, записали в бинарный файл массивом. Закрылся ордер, очистили массив, перебрали ордера с заполнением массива и опять переписали тот самый файл. При запуске в OnInit() читаем файл и всё на месте.

А вот если во время аварии будет закрыт какой-либо ордер по тейку или стопу, тут уже ничего не сделаешь. Так и называется АВАРИЯ...

 А откуда мне знать когда он закрылся? Вполне возможно он достигнет тейкпрофита и закроется самим ДЦ. Шерстить ежетиково все открытые ордера на наличие локов? Тут, пожалуй, поясню:

Ведь если писать в файл собранную инфу в массив, нам необходимо его расширять увеличивая размер при надобности, и, если какие-то позиции закрываются - наоборот очищать. Но как будет осуществляться контроль  всего этого процесса? Вот в этом самая главная загвоздка!

 
borilunad:
Мне лучше в евро! Структуры, повторяю, излишество!
Функции, Борис, тоже излишества. Самое то - процедурная кодинг, а ещё лучше  - ассемблер!
 
shanty:

 Это как? Пачка она и есть пачка. Ведь пачка сигарет не может быть одной сигаретой... Верно? А пачка кофе - зерном.

А так-же как семья может состоять из одного человека. Только представь, лежит на столе пачка, ровная как новенькая, а в ней всего одна сигарета, но ты об этом не знаешь и не видишь. Что ты ответишь на вопрос "Что лежит на столе?"? Но если туда положить ещё 19 штук, это будет полноценная пачка, а если 12 штук положить, будет тоже пачка но не полная. Так-же как холостяк, женится у него будет семья из 2х человек, а родится ребёнок, может и не один... Вот тебе и полноценная семья.

shanty:

 Принадлежит или нет это другой вопрос. Суть в том, что можно при адекватном алгоритме если действие уже осуществлено не перепроверять его по 10 раз. А можно постоянно тыкаться и шерстить все пачки ордеров.

Это уже дело техники. Но обсуждать это у меня нет желания. Сложно объяснять когда, тот кому объясняешь, пытается только опровергнуть услышанное. Посчитай сколько я приложил труда чтобы услышать это

shanty:

Согласен. Логично.

 
AlexeyVik:

А так-же как семья может состоять из одного человека. Только представь, лежит на столе пачка, ровная как новенькая, а в ней всего одна сигарета, но ты об этом не знаешь и не видишь. Что ты ответишь на вопрос "Что лежит на столе?"? 

Ответ: Пачка от сигарет))

AlexeyVik:

Это уже дело техники. Но обсуждать это у меня нет желания. Сложно объяснять когда, тот кому объясняешь, пытается только опровергнуть услышанное. Посчитай сколько я приложил труда чтобы услышать это

 Да я не спорю, и не собираюсь спорить. Про тикет "стратегического" ордера я учёл. Это вполне разумный вариант реализации.

А вот как работать с файлом пока что думаю. Не такая это простая задача, а я б сказал даже - сложная. Потому и думаю.

Реализации обычно других задач решаются быстрее на много. А тут начинаю делать, и как-то отталкивает. Приходится переключатся между задачами (

 

Вот представь, что на одном счёте работают несколько советников. Ну пусть два. Один из них ставит доливки, локи и прочую ... А второй только 1-2 ордера и не более. Как будет работать второй? Перебирать все ордера в поиске своих или при открытии заполнит массив двумя значениями тикетов и будет следить только за ними выбирая по тикету и проверяя их состояние. А запись в файл не так уж необходима, на мой взгляд, или лучше сказать не каждый раз нужна. В некоторых случаях можно в ините перебрать, заполнить массив и продолжать работать с массивом. А вот в твоём случае я не стал-бы заморачиваться на переборе в ините, а просто скинул в файл.

Пропусти поиск последней записи в файле. Она в этом случае не нужна. Просто посмотри запись массива в бинарный файл. Это как два пальца... разберёшься.

 
AlexeyVik:

Вот представь, что на одном счёте работают несколько советников. Ну пусть два. Один из них ставит доливки, локи и прочую ... А второй только 1-2 ордера и не более. Как будет работать второй? Перебирать все ордера в поиске своих или при открытии заполнит массив двумя значениями тикетов и будет следить только за ними выбирая по тикету и проверяя их состояние. А запись в файл не так уж необходима, на мой взгляд, или лучше сказать не каждый раз нужна. В некоторых случаях можно в ините перебрать, заполнить массив и продолжать работать с массивом. А вот в твоём случае я не стал-бы заморачиваться на переборе в ините, а просто скинул в файл.

Пропусти поиск последней записи в файле. Она в этом случае не нужна. Просто посмотри запись массива в бинарный файл. Это как два пальца... разберёшься.

По сути да. Пару дней - перекур. А дальше со свежей головой возьмусь за реализацию. Когда голова отказывается что-то делать, лучше перекурить. Такое бывает не часто, но всё же иногда бывает.

А про подгрузку при инициализации данных в массив я думал часа полтора назад. Запись тоже только в ключевых местах. Тогда можно не заморачиваться особо.

Я что подумал. Чтоб не лопатить тот же файл, можно очищать его от несуществующий на момент проверки позиций по выходным или в конце торговой сессии. Это так.. мысли в слух. 

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