Йцукен (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 2 3 4 5
Вопрос о целостности данных при работе с таблицей из разных вычислительных потоков
 
Похоже, операция множественного присвоения выполняется атомарно.
Вот такой код работает без ошибок:
Скрытый текст
Cкорость обмена данными через файлы
 
Цитата
nikolz написал:
Но если это разные потоки или приложения, то надо синхронизировать
Как в QLua синхронизировать запись из разных скриптов в один файл?
Вопрос о целостности данных при работе с таблицей из разных вычислительных потоков
 
Цитата
nikolz написал:
При множественном присваивании Lua сначала вычисляет все значения, а затем выполняет присваивание.
А если все значения уже вычислены, как в примерах выше?
Вопрос о целостности данных при работе с таблицей из разных вычислительных потоков
 
Является ли атомарной операция присвоения одновременно нескольким переменным?
Код
a, b = 1, 2
или
Код
x, y = y, x
Нули в индикаторе там, где должны быть пустые интервалы
 
Вот код тестового индикатора:
Код
Settings = {
  Name = "Test",
  line = {{ Name = "Test" }}
}

function Init()
  return 1
end

function OnCalculate(index)
  if true == CandleExist(index) then
    return C(index)
  end
  --return nil
end
Если его добавить на диаграмму с несколькими графиками и сделать экспорт в текстовый файл, то на тех свечах, где индикатор не рассчитывался будут нули.
Нули в индикаторе там, где должны быть пустые интервалы
 
Пишу индикатор. При отсутсвии свечки OnCalculate не рассчитывает значение (когда на одну диаграмму добавляется несколько графиков).
Но если сохранить индикатор в текстовый файл (ПКМ - Сохранить данные в файл), то на месте нерассчитанных значений будут нули.
На примере Moving Average:
Цитата
CHU2 [SPBFUT],1,20251130,175500,94927.555556
CHU2 [SPBFUT],1,20251130,175900,95014.000000
CHU2 [SPBFUT],1,20251130,180100,95059.111111
CHU2 [SPBFUT],1,20251130,180400,0.000000
CHU2 [SPBFUT],1,20251130,180900,0.000000
CHU2 [SPBFUT],1,20251130,181200,0.000000
CHU2 [SPBFUT],1,20251130,181300,0.000000
CHU2 [SPBFUT],1,20251130,181700,0.000000
CHU2 [SPBFUT],1,20251130,182100,95076.111111
При этом, если сохранить стандартный квиковский индикатор с тогой же диаграммы, то он будет без нулей:
Цитата
CHU2 [SPBFUT],1,20251130,175500,94927.555556
CHU2 [SPBFUT],1,20251130,175900,95014.000000
CHU2 [SPBFUT],1,20251130,180100,95059.111111
CHU2 [SPBFUT],1,20251130,182100,95076.111111
Вопрос: как в самописном индикаторе сделать так же?

Пробовал возвращать и nil и ничего не возвращать в OnCalculate
Код
function OnCalculate(index)
  ...
  if v ~= nil then return v
  else return nil end
end
Код
function OnCalculate(index)
  ...
  if v ~= nil then return v end
end
Результат одинаковый.
Страницы: Пред. 1 2 3 4 5
Наверх