https://smart-lab.ru/blog/954230.php
BaseClassCode = «SPBFUT»
ClassCode = «SPBOPT»
BaseSecList = «SiU3»
SecList = getClassSecurities(ClassCode) --список всех опционов
if (BaseSecList == "") or (BaseSecList == nil)
then BaseSecList = getClassSecurities(BaseClassCode)
end
if (SecList == "") or (SecList == nil)
then SecList = getClassSecurities(ClassCode)
end
function main()
for SecCode in string.gmatch(SecList, "([^,]+)")
do --перебираем опционы из строки с разделителем, по очереди.
local Optionbase=getParamEx(ClassCode,SecCode,«optionbase»).param_image
local Optiontype=getParamEx(ClassCode,SecCode,«optiontype»).param_image
local Optionstrike=getParamEx(ClassCode,SecCode,«strike»).param_value+0
if (string.find(BaseSecList,Optionbase)~=nil)
and (Optiontype==«Call»)
and (Optionstrike>=_C-RangeStrike)
and (Optionstrike<=_C+RangeStrike)
then local row = InsertRow(tbl.t_id,-1)
local T = {
[«Name»] = getSecurityInfo(ClassCode,SecCode).name,
[«SecCode»] = SecCode,
[«Optiontype»] = Optiontype,
[«Optionbase»] = Optionbase,
[«DAYS_TO_MAT_DATE»]=
getParamEx(ClassCode,SecCode,«DAYS_TO_MAT_DATE»).param_value+0,
[«strike»] = getParamEx(ClassCode,SecCode,«strike»).param_value+0,
[«bid»] = getParamEx(ClassCode,SecCode,«bid»).param_value+0,
[«offer»] = getParamEx(ClassCode,SecCode,«offer»).param_value+0,
[«last»] = getParamEx(ClassCode,SecCode,«last»).param_value+0,
[«THEORPRICE»] = getParamEx(ClassCode,SecCode,«THEORPRICE»).param_value+0
}
end
Комментариев нет:
Отправить комментарий