0 Пользователей и 1 Гость просматривают эту тему.
Цитата: ihaar от 31 Января 2012, 08:03:48может имеет смысл завести ветку по easylanguage?что бы делиться полезностями типа такого:при работе с текстами постоянно приходится иметь в уме количество десятых если необходимо вывести ценовое значениеа ежели использовать такой кодКод: [Выделить]if PriceScale = 100000 then autodecimal = 5 elseif PriceScale = 10000 then autodecimal = 4 elseIf PriceScale = 1000 then autodecimal = 3 elseIf PriceScale = 100 then autodecimal = 2 elseIf PriceScale = 10 then autodecimal = 1 else If PriceScale = 1 then autodecimal = 0; введя переменную autodecimal и подставляя её как второй параметр в NumToStr, будем автоматически иметь правильное отображение ценыможно оформить в функциюМожно еще проще и универсальней: {***************************************************************************************************Функция предназначена для определения ценовой доли актива (количества знаков дробной части)***************************************************************************************************}Vars: Val1(MinMove / PriceScale), Val2(Round(0.123456789 / Val1, 0)), Val3(IFF(Val2 = 0, 0, StrLen(NumToStr(Val2, 0))));PFDigits = Val3;{***************************************************************************************************Функция предназначена для округления значения переменной до ценовой доли актива***************************************************************************************************}Inputs: Value(Numeric);PFRound = Round(Value, PFDigits);Например, значение Value0 = PFRound(Close / 3) будет округлено до ценовой доли.
может имеет смысл завести ветку по easylanguage?что бы делиться полезностями типа такого:при работе с текстами постоянно приходится иметь в уме количество десятых если необходимо вывести ценовое значениеа ежели использовать такой кодКод: [Выделить]if PriceScale = 100000 then autodecimal = 5 elseif PriceScale = 10000 then autodecimal = 4 elseIf PriceScale = 1000 then autodecimal = 3 elseIf PriceScale = 100 then autodecimal = 2 elseIf PriceScale = 10 then autodecimal = 1 else If PriceScale = 1 then autodecimal = 0; введя переменную autodecimal и подставляя её как второй параметр в NumToStr, будем автоматически иметь правильное отображение ценыможно оформить в функцию
if PriceScale = 100000 then autodecimal = 5 elseif PriceScale = 10000 then autodecimal = 4 elseIf PriceScale = 1000 then autodecimal = 3 elseIf PriceScale = 100 then autodecimal = 2 elseIf PriceScale = 10 then autodecimal = 1 else If PriceScale = 1 then autodecimal = 0;