
Settings={
Name="absorption",
period=20,
line=
{
{
Name = "cur1",
Type =TYPE_LINE,
Width = 2,
Color = RGB(255,0, 0)
}
}
}
--[[
описание свойств:
period - период, за каротрый делается расчет
назначение:
построение поглащения
--]]
function Init()
y = 0
return 1
end
function OnCalculate(index)
sz = Size()
n = Settings.period
if index == 1 then
y = 0
end
i = index
if index-n > 0 then
if (C(i) < C(i-1)) and (C(i-1) > O(i-1)) and (C(i) < O(i)) and
(C(i-1) - O(i-1) < O(i) - C(i)) then
y = y - 1
end
if (C(i) > C(i-1)) and (C(i-1) < O(i-1)) and (C(i) > O(i)) and
(O(i-1) - C(i-1) < C(i) - O(i)) then
y = y + 1
end
end
return y
end
Признаться уже достал этот 32-битный Quik 7. Работать стало почти невозможно, начал подвисать практически на пустом месте. А если повесить на Quik Lua, а к Lua прицепить DLL, то вообще все эпизодически вставало. DLL-ки, вообще-то, многопоточные и освобождают вызывающие потоки (события) Lua практически за миллисекунды, но если таких событий много Quik встает. Хотя, он и без Lua и DLL тоже регулярно встает.)
Были и другие причины ухода от 32-бит Quik, но это уже связано с брокером и другими факторами.
Итак, новый брокер — новый 64-битный Quik 8.4.1.6. Наконец сбылась мечта идиота!
Что можно сказать, — х64 Quik работает гораздо лучше, все равно временами немного подвисает, но, вроде, некритично. После логин-пароля, прежде чем работать надо подождать, — потоки обезличенных сделок начинают работать только через 3-4 минуты после старта. В общем, с этим все более-менее ОК.
Следующий этап — надо переводить весь подключаемый к Quik софт с х86 на х64, и если есть исходники, то никаких проблем не должно появиться. Если вы не используете в своем софте каких либо дополнительных DLL, то все должно ограничиваться двумя действиями.
1. Меняете в проекте С++ в разделе Файлы ресурсов 32-битную версию файла Lua5.1.lib на 64-битную версию Lua5.1.lib,
2. Выставляете в свой свойствах проекта компиляцию в x64. Можно даже так:



