Как сделать цикл по всем меткам на графике в LUA

Страницы: 1
RSS
Как сделать цикл по всем меткам на графике в LUA
 
Подскажите пожалуйста, можно ли в LUA сделать перебор всех меток имеющихся на каком-то из графиков?

Не смог найти такую функцию.

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

Заранее спасибо за ответ
 
Для сохранения информации между сеансами необходимо использовать файлы.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Вот эта библиотека позволяет сохранять данные между запусками скрипта.
https://quik2dde.ru/viewtopic.php?id=61
 
сохранить номера меток между сессиями проблем не составляет, просто не хотелось бы это делать, ибо во-первых лишняя нагрузка на систему, а во вторых - на графике ведь они есть, почему бы не попробовать их оттуда взять при необходимости.  
 
может у них есть какой нибудь массив данных? Типа глобальной переменной _G
 
Цитата
Sergey Denegin написал:
может у них есть какой нибудь массив данных? Типа глобальной переменной _G
Создавайте  метки в индикаторе и сохраняйте их в массиве. При новом запуске метки построятся заново и сохранятся в массиве.
 
у меня метки - это либо треугольники с отметками о сделках, либо вертикальные черточки обозначающие нужные места.
Как я их могу в индикатор запихнуть?
 
Цитата
Николай Камынин написал:
сохраняйте их в массиве.
В любом случае не надо мне больше предлагать сохранять их в массив. Это решение и так очевидно. Я ищу решение поиска меток именно в средствах квика и LUA, а не в ручном сохранении меток.  
 
Цитата
Sergey Denegin написал:
Цитата
Sergey Denegin написал:
Цитата
Николай  Камынин   написал:
сохраняйте их в массиве.
В любом случае не надо мне больше предлагать сохранять их в массив. Это решение и так очевидно. Я ищу решение поиска меток именно в средствах квика и LUA, а не в ручном сохранении меток.
Но если потом перезапустить скрипт, то номера теряются. А нужно иметь возможность управлять этими метками
.
Цитата
s_mike@rambler.ru написал:
Для сохранения информации между сеансами необходимо использовать файлы.
Цитата
Sergey Denegin написал:
может у них есть какой нибудь массив данных? Типа глобальной переменной _G
Под каждый скрипт индикатора - в QLUA - заводится своя отдельная виртуальная машина - стало быть, друг с другом они могут общаться - только штатными средствами QLUA, либо - через создание общего для всех скриптов файла с данными. -> (Вам же ведь надо, чтоб данные сохранялись после перезапуска скриптов).

так что...
простых способов - не существует. Вам надо смотреть в сторону многопоточных баз данных.
Например, в сторону SQLite -> https://www.sqlite.org/threadsafe.html

В частности...
1. Overview
SQLite supports three different threading modes:  
  1. Single-thread. In this mode, all mutexes are disabled and SQLite is unsafe to use in more than a single thread at once.
  2. Multi-thread. In this mode, SQLite can be safely used by multiple threads provided that no single database connection is used simultaneously in two or more threads.
  3. Serialized. In serialized mode, SQLite can be safely used by multiple threads with no restriction.
Однако,

не всё так просто...
для этого надо ещё снабдить эту базу прокладкой с LUA-интерфейсом. Как только Вы это сделаете - многие из Ваших проблем - решатся сами с собой.

Либо...

воспользоваться поделками народных умельцев...
например...:

Цитата
swerg написал:
Вот эта библиотека позволяет сохранять данные между запусками скрипта.
https://quik2dde.ru/viewtopic.php?id=61

------------------------------------------------------------------------

Для себя лично - я выбрал SQLite
 
Цитата
Sergey Denegin написал:
Цитата
Николай  Камынин   написал:
сохраняйте их в массиве.
В любом случае не надо мне больше предлагать сохранять их в массив. Это решение и так очевидно. Я ищу решение поиска меток именно в средствах квика и LUA, а не в ручном сохранении меток.
Вам - правильно написали. Эьто самый простой и быстрый способ. Тменно так все и делают. А не пытаются искать следы меток в глобальной таблице "_G"
Сохранение же информации между перезапусками скриптов - это уже вторая задача и далеко нетривиальная (см. моё предыдущее сообщение).
 
Я вас понял. Вопрос был именно о том, есть ли возможность найти сами метки на графике.
Впрочем проанализировав номера меток, я понял, что они присваиваются последовательно от 1 и по возрастанию, так что при необходимости можно просто цикл сделать и удалить только те, которые нужно
Страницы: 1
Читают тему
Наверх