Artem (Все сообщения пользователя)

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

Страницы: 1
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
Владимир,спасибо, что откликнулись!

swerg, спасибо! Да, теперь нули ушли, Ваше решение помогло.
Но это значит, что то что работало до этого :
Код
                local Pr = getParamEx("SPBFUT", SecCode, "LAST").param_value
      sleep(10)      
      local M_Order = {
            ACTION      = "NEW_ORDER",
            ACCOUNT     = Depo,
            OPERATION   = Gen,
            CLASSCODE   = "SPBFUT",
            SECCODE     = SecCode,
            PRICE       = tostring(Pr),         
            TRANS_ID    = tostring(ID_Gen),   
            TYPE        = "M",
            CLIENT_CODE = tostring(ID_Gen),               
                  }
теперь не будет работать? И нужно добавлять дополнительные строки кода, равное увеличению времени работы в целом.
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
добавил отбрасывание дробной части, которая у меня раньше (на квике 7) работала без проблем:
Код
local currentPrice
function main()
    while myScriptWorks == true do   
      currentPrice = getParamEx("SPBFUT", "SiZ0", "last").param_value
     sleep(10)     
     currentPrice = tostring(currentPrice - currentPrice % 10)
     message(currentPrice)     
      sleep(3000)
   end
end
Теперь на выходе 76520.0
И ноль этот после запятой ну никак не убирается.

Хорошо бы ребята из техподдержки подтянулись.
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
И все таки, что это за явление такое с добавление нулей к цене последней сделки? Откуда ноги растут? Может винда виновата, у меня Win7 x64.
Вообще мне нужно просто выставлять заявку, но сервер ее не принимает, потому как лишние 00000 после запятой, там где их не должно быть.
Никто не знает что с этим делать?
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
Владимир, Вы сами пробовали этот код, работает? У меня ничего не поменялось.
вот Ваша функция:
Код
function d0(currentPrice)         -- обрезка концевых нулей после запятой
 currentPrice=tonumber(currentPrice);         -- для числовых переменных
 if currentPrice==math.floor(currentPrice) then 
 currentPrice=math.floor(currentPrice);
 end;
 return tostring(currentPrice);      -- возвращаем огрызок
end;            -- конец функции d0()

function main()
    while myScriptWorks == true do   
      currentPrice = getParamEx("SPBFUT", "SiZ0", "last").param_value
      sleep(10)
      d0(currentPrice)
      message(currentPrice)
      sleep(3000)
   end
end
Я правильно ее использую или может надо еще что-то?
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
Цитата
Владимир написал:
Artem,  
Код
   function   d0 (s)          -- обрезка концевых нулей после запятой 
 s = tonumber(s);          -- для числовых переменных 
  if  s =  =  math.floor (s)  then  s =  math.floor (s); end ;
  return  tostring(s);       -- возвращаем огрызок 
 end ;             -- конец функции d0() 
  
Спасибо, буду разбираться
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
Цитата
Владимир написал:
Artem, Разбиралось здесь уже. И код утилиты, убирающей концевые нули, не раз приводился.
не нашел, поэтому и тему создал. Не могли бы Вы объяснить еще раз что это за явление, если знаете?
getParamEx добавляет 000000 после запятой Quik 8.7.1.3
 
Добрый день, коллеги!
Столкнулся с небольшой проблемкой, которую никак не удается решить пока. Короче делаю это:
Код
function main()
    while myScriptWorks == true do   
      currentPrice = getParamEx("SPBFUT", "SiZ0", "last").param_value
      sleep(10)
      message(currentPrice)
      sleep(3000)
   end
end

на выходе получаю это:

76054.000000

Не могу понять, что произошло. Последний раз баловался Qlua еще на 7 Квике и таких проблем не припомню.
Запускал два Квика от разных брокеров, один 8.10, другой 8.7 и везде одно и тоже.
Страницы: 1
Наверх