Помогите с математикой

Страницы: 1
RSS
Помогите с математикой
 
Господа, прошу прощения за тупенький вопрос. Я не силён в математике, функциях и других простых вещах школьной программы.
Я хочу задать такую зависимость:
чем выше стандартное отклонение, тем шире будут полосы Боллинджера.
Сейчас у меня запрограммировано так:

if sd[sec]>200 then otklonenie=5 end
if sd[sec]>50 then otklonenie=4 end
if sd[sec]>0 then otklonenie=3 end

То есть если рынок волатильный, то в Боллинджер будет заряжено больше стандартных отклонение (его ширина будет выше), а если рынок дохлый, то полосы будут более узкими.
Я хочу, чтобы у меня были промежуточные значения. Ну например при sd[sec]==70 у меня ширина полос боллинджера будет 4,35 стандартных отклонений.
Помогите это выразить через функцию.
otklonenie= .......sd[sec].........
Я понимаю, что ответ может быть разным. Линия может иметь разную кривизну, но мне нужна хоть какая то стартовая подсказка, чтобы понять как это выразить математически.
Спасибо заранее за помощь.
 
Исправил код условия (опечатался когда писал)

if sd[sec]>0 then otklonenie=3 end
if sd[sec]>50 then otklonenie=4 end
if sd[sec]>200 then otklonenie=5 end
 
разобрался

или что то в этом роде
 
Надо конструкцию else освоить.
 
Цитата
Constantin написал:
Надо конструкцию else освоить.
Зачем?
Код в моей версии понятный, элегантный и не громоздкий (всего 3 строчки).
Если использовать else, он был бы намного объёмнее.
 
Цитата
Let_it_go написал:
Цитата
Constantin   написал:
Надо конструкцию else освоить.
Зачем?
Код в моей версии понятный, элегантный и не громоздкий (всего 3 строчки).
Если использовать else, он был бы намного объёмнее.
Очевидно , что Вы не только в математике но и в программировании ...
Ваш код -это исполнение if всегда три раза, а с else  от 1 до 3 т е быстрее.
 
Я знаю.
Но это всё равно происходит за 1 квант времени. То есть очень быстро.
Нет смысла такое оптимизировать.
 
Цитата
Let_it_go написал:
Зачем?
Код в моей версии понятный, элегантный и не громоздкий (всего 3 строчки).
Если использовать else, он был бы намного объёмнее.

if sd[sec]>200 then otklonenie=5
elseif sd[sec]>50 then otklonenie=4
elseif sd[sec]>0 then otklonenie=3 end

Вроде тоже 3 строчки

Цитата
Let_it_go написал:
Нет смысла такое оптимизировать.

Да как так-то?! )))
На горизонте простор для мемов )))
 
Полная оптимизация:
Код
d = sd[sec]
if d>200 then otklonenie=5 
elseif d>50 then otklonenie=4 
else otklonenie=3 end

Вот здесь точно всё происходит "за 1 квант времени". :)
 
Только ещё "d" забыл объявить как local.
 
[img]file:///D:/Storage/Xsharp.ru/LOGO4/2017-10-30_6_Matem.png[/img]
Lbot3D
Страницы: 1
Читают тему
Наверх