BF.lua
À propos du fichier
- Type de fichier
- Fichier LUA de 2 Ko (text/plain)
- Confidentialité
- Fichier public, envoyé le 14 février 2019 à 14:34, depuis l'adresse IP 88.167.x.x (France)
- Sécurité
- Ne contient aucun Virus ou Malware connus - Dernière vérification: 2 jours
- Statistiques
- La présente page de téléchargement a été vue 504 fois depuis l'envoi du fichier
- Page de téléchargement
-
Aperçu du fichier
-- Indicateur Bougie Flottante v0.4
-- Bastien Faure beobast@gmail.com
-- Cet indicateur détecte les bougies flottantes
local first, source, period, deviation, BB, bodySize, up, down;
function Init()
indicator:name("Indicateur Bougie Flottante");
indicator:description("Detecte les bougies flottantes");
indicator:requiredSource(core.Bar);
indicator:type(core.Indicator);
indicator.parameters:addInteger("period", "Nombre de periodes des BB", "Nombre de periodes des BB", 20, 1, 10000);
indicator.parameters:addDouble("deviation", "Ecart-type des BB", "Ecart-type des BB", 2.0, 0.0001, 1000.0);
indicator.parameters:addInteger("bodySize", "% du corps de la bougie en dehors des BB", "% du corps de la bougie devant etre en dehors des BB", 90, 1, 100);
indicator.parameters:addInteger("size", "Taille", "Taille du drapeau dessinee", 14);
end
function Prepare(nameOnly)
source = instance.source;
period = instance.parameters.period;
deviation = instance.parameters.deviation;
bodySize = instance.parameters.bodySize / 100;
first = source:first() + period;
local name = profile:id() .. "(" .. source:name() .. ", " .. period .. ", " .. deviation .. ")";
local size = instance.parameters.size;
instance:name(name);
if nameOnly then return; end
BB = core.indicators:create("BB", source, period, deviation);
up = instance:createTextOutput("Up", "Up", "Wingdings", size, core.H_Center, core.V_Top, core.rgb(0, 0, 0), first);
down = instance:createTextOutput("Down", "Down", "Wingdings", size, core.H_Center, core.V_Bottom, core.rgb(0, 0, 0), first);
end
function Update(period, mode)
if period <= first then return; end
BB:update(mode);
local top = BB.TL[period];
local bottom = BB.BL[period];
local close = source.close[period];
local open = source.open[period];
local max = math.max(open, close);
local min = math.min(open, close);
local range = math.abs(open - close);
if (max > top and ((max - top) / range) > bodySize) then
up:set(period, source.high[period], "\79", "");
elseif (min < bottom and ((bottom - min) / range) > bodySize) then
down:set(period, source.low[period], "\79", "");
else
up:setNoData(period);
down:setNoData(period);
end
end
Partager le fichier BF.lua sur le Web et les réseaux sociaux:
Télécharger le fichier BF.lua