Usando estilos de gráfico, cores, títulos e parâmetros em Indicadores O AmiBroker fornece estilos e cores personalizáveis de gráficos em indicadores personalizados. Esses recursos permitem mais flexibilidade na criação de seus indicadores. Este artigo irá explicar como usar estilos e cores. Ele também explicará como definir o título do gráfico que aparece na parte superior do gráfico. O gráfico é a função usada para traçar um gráfico. Demora 9 parâmetros, dos quais os 3 primeiros são necessários. Parâmetro de matriz representa os dados a serem plotados, parâmetro de nome define o nome do gráfico (usado na seqüência de título para mostrar os valores do indicador), parâmetro de cor define a cor da trama, estilo define o aspecto do gráfico (ie linehistogramcandlestickbar, etc. ). O estilo padrão é a linha. Minvalue e maxvalue raramente são usados paremeters que definem valores mínimos e máximos hard-coded usados quando o gráfico usa quotindependentquot scaling, isto é, styleOwnScale é especificado no parâmetro de estilo. Geralmente você não precisa especificá-los em tudo. XShift permite deslocar o gráfico para além da última barra (por exemplo, deslocar médias móveis ou projecções para o futuro) ZOrder - define a posição do eixo Z do gráfico dado. O padrão é zero. Zorder 0 significa também onde o quotgridquot está localizado. Portanto, se você quiser plotar ATRÁS da grade você precisa especificar o parâmetro zorder negativo. Os planos são desenhados na seguinte ordem: o parâmetro zorder tem precedência sobre a ordem das funções Plot () de chamada, portanto, se a ordem z estiver definida, ela determinará a plotagem ordem. Veja esta imagem. Se várias parcelas usam o mesmo parâmetro de ordem z, elas são plotadas na ordem de chamada inversa (as que aparecem em último lugar no código são plotadas primeiro). Esta regra pode ser alterada pela comutação já existente graphzorder 1 que, quando especificada, inverte esse comportamento (para que os gráficos sejam desenhados na ordem de chamada). Observe que o acima se aplica a cada zorder quotlayerquot separadamente (de modo que dentro da mesma regra de chamada quotlayer quotlayerquot se aplica) width - (novo em 5.60) define pixel ou percentual de largura de determinado gráfico. O padrão é 1 pixel. Os valores positivos especificam a largura do PIXEL, os valores negativos especificam a largura em percentagem da largura da barra atual. Assim, por exemplo -20 lhe dará largura dinâmica que é 20 de largura de barra. Um exemplo, a chamada de função única a seguir traça um indicador RSI com linha de cor vermelha: Plot (RSI (14), My RSI. ColorRed) Como você pode ver, fornecemos apenas os três primeiros parâmetros (obrigatórios). O primeiro parâmetro é a matriz que precisamos plotar. No nosso exemplo é o indicador RSI (14). O segundo parâmetro é apenas o nome. Pode ser qualquer nome que você quiser. Ele será exibido na linha de título juntamente com o valor do indicador como mostrado na figura abaixo: Terceiro parâmetro é a cor. Para especificar a cor do gráfico, você pode usar uma das seguintes constantes pré-definidas: Cores personalizadas referem-se à paleta de cores definida pelo usuário editável usando Tools-gtPreferences-gtColors, os valores numéricos que aparecem após a marca (equação) são apenas para referência e você não Necessidade de usá-los. Use apenas o nome como colorDarkGreen. ColorCustom1 0 colorCustom2 1 colorCustom3 2 colorCustom4 3 colorCustom5 4 colorCustom6 5 colorCustom7 6 colorCustom8 7 colorCustom9 8 colorCustom10 9 colorCustom11 10 colorCustom12 11 colorCustom13 12 colorCustom14 13 colorCustom15 14 colorCustom16 15 colorBlack 16 colorBrown 17 colorDarkOliveGreen 18 colorDarkGreen 19 colorDarkTeal 20 colorDarkBlue 21 colorIndigo 22 colorDarkGrey 23 colorDarkRed 24 ColorOrange 25 colorDarkYellow 26 colorGreen 27 colorTeal 28 colorBlue 29 colorBlueGrey 30 colorGrey40 31 colorRed 32 colorLightOrange 33 colorLime 34 colorSeaGreen 35 colorAqua 35 colorLightBlue 37 colorViolet 38 colorGrey50 39 colorPink 40 colorGold 41 colorYellow 42 colorBrightGreen 43 colorTurquoise 44 colorSkyblue 45 colorPlum 46 colorLightGrey 47 colorRose 48 colorTan 49 ColorLightYellow 50 colorPaleGreen 51 colorPaleTurquoise 52 colorPaleBlue 53 colorLavender 54 colorWhite 55 Você também pode usar o novo 24-bit (paleta de cores completa) divertido Ctions ColorRGB e ColorHSB Você pode facilmente plotar gráficos multi coloridos utilizando as duas funções de Plot. Tudo o que você precisa fazer é definir uma matriz de índices de cores. No exemplo a seguir MACD é plotado com cor verde quando está acima de zero e com cor vermelha quando está abaixo de zero. (MACD (), My MACD. Dynamiccolor) Além de definir a cor, podemos fornecer o 4 º parâmetro que define o estilo do gráfico. (MACD () gt 0. colorGreen. Por exemplo, podemos alterar o gráfico MACD anterior para o histograma grosso em vez da linha: dynamiccolor IIf (MACD () gt 0. colorGreen. ColorRed) Plot (MACD (), My MACD. Dynamiccolor, styleHistogram styleThick) Como você pode ver, vários estilos podem Podem ser combinados usando o operador (binário-ou). (Nota: o caractere pode ser digitado pressionando a barra invertida enquanto mantém pressionada a tecla SHIFT). O diagrama resultante é semelhante a este: Para traçar o gráfico de castiçal estamos usando styleCandle constante, como neste exemplo: Plot (Close. Price. ColorBlack. StyleCandle) Para traçar barras tradicionais com cor (verde até barras e barras vermelhas para baixo) Dependendo da relação entre preço aberto e fechado e styleBar no argumento de estilo: Plot (Fechar Preço. IIf (Fechar gt Open. colorGreen. ColorRed), styleBar styleThick) Todas as constantes de estilo disponíveis são resumidas na tabela abaixo. Estilo é definido como uma combinação (usando qualquer adição () ou operador binário ou () de um ou mais sinalizadores a seguir (você pode usar constantes de estilo predefinidas em vez de números) styleLine 1 - normal (linha) gráfico (padrão) styleHistogram 2 - estilo de gráfico histogramaThick 4 - gordura (thick) styleDots 8 - incluir pontos styleNoLine 16 - sem linha styleDashed 32 - tracejado estilo de linha styleCandle 64 - gráfico de castiçal styleBar 128 - gráfico de barra tradicional styleNoDraw 256 - sem desenhar styleStaircase 512 - gráfico de área (histograma extra amplo) styleOwnScale 32768 - gráfico está usando estilo de escala independenteLeftAxisScale 65536 - o gráfico está usando a escala do eixo esquerdo (independente do eixo da direita) styleNoTitle 131072 - não inclua esse valor na cadeia de título styleCloud 262144 - pinta um gráfico quotcloudquot (área preenchida) (veja exemplos abaixo) styleClipMinMax 524288 - área de clipe entre os níveis mínimo e máximo definidos na instrução Plot. (Nota: este estilo não é compatível com a maioria das impressoras) styleGradient - (novo em 5.60) - Gráfico de área de gradiente. A cor do gradiente superior é especificada pelo parâmetro de cor na função Plot (), a cor do gradiente inferior é cor de fundo ou pode ser definida usando a função SetGradientFill. StyleGradient pode ser combinado com styleLine Nem todas as combinações de sinalizador fazem sentido, por exemplo (641) (linha de candlestick) resultará em gráfico de castiçal (style64) Nota sobre gráficos de candlestickbar: se esses estilos são aplicados à função Plot (), então eles usam indiretamente O , H, L arrays. Se você quiser especificar seus próprios valores de OHL, você precisa usar a função PlotOHLC (). Os novos estilos styleCloud e styleClipMinMax trazem novas possibilidades interessantes mostradas na imagem de exemplo abaixo: A fórmula para o gráfico no painel do meio (arco-íris de 24 bits múltiplas médias móveis) tem a seguinte aparência: lado 1 incremento Param (Incremento 2. 1. 10. 1) para (i 10 i lt 80 ii incremento) up MA (C i) para baixo MA (incremento C) if (ParamToggle (efeito 3D, NoYes. 1)) lado IIf (upltdown E Ref (upltdown, 1) , 1. 0.6) PlotOHLC (para cima, para cima, para baixo, para baixo, MA i, ColorHSB (3 (i-10), Param (Saturação 128. 0. 255), Side Param (Brilho 255. 0. 255) , StyleCloud styleNoLabel) A fórmula para o gráfico no painel inferior (K estocástico lento com topos coloridos e fundos) olha como segue. Ele usa styleClipMinMax para obter clipping da região da nuvem entre os níveis mínimo e máximo especificados na instrução de plotagem. Sem esta área de estilo entre minmax seria preenchido. Observe que devido à região de recorte de limitação de GDI do Windows (styleClipMinMax) é compatível somente em dispositivos de mapa de bits (bitmap) para que ele não seja compatível com impressoras ou saída WMF (metarquivo do Windows). SetChartOptions (0. 0, ChartGrid30 ChartGrid70) r StochK (14) Plot (r, StochK. colorBlack) PlotOHLC (r, r, 50, r ,. IIf (r gt 50. colorRed. ColorGreen), styleCloud styleClipMinMax, 30. 70 ) O parâmetro XShift permite deslocar (deslocar) o gráfico na direcção horizontal pelo número especificado de barras. Isso permite traçar as médias móveis deslocadas e projeções para o futuro. Consulte o seguinte código de exemplo da média móvel deslocada: Parâmetros Parâmetro (Períodos 30. 2. 100) Parâmetro de deslocamento (Deslocamento: 15 - 50. 50) Lote (MA (períodos C), DEFAULTNAME (), ColorCycle, styleLine. 0. 0. Deslocamento) Agora é fácil sobrepor gráficos de preços de vários símbolos usando a função PlotForeign: PlotForeign (tickersymbol. Name. cadbarcolor. Style styleCandle styleOwnScale. minvalue, maxvalue, xshift 0) Traça o gráfico de preço de símbolo estrangeiro (o símbolo é Definido pelo parâmetro tickersymbol). O nome do segundo argumento define o nome do gráfico usado para exibir valores em uma barra de título. A cor do gráfico pode ser estática (se o terceiro argumento for um número) ou dinâmico (quando o terceiro argumento for uma matriz). Os índices de cor estão relacionados com a paleta atual (ver PreferencesColor) estilo define o estilo do gráfico de gráfico (consulte a função Plot () para possíveis valores) PlotForeign (quotDJIquot, quotDow Jonesquot, colorRed) PlotForeign (quotNDXquot, quotNasdaq 100quot, colorBlue) PlotForeign (quotIXICquot, quotNasdaq Compositequot, colorGreen) Múltiplos gráficos usando escala diferente Dois novos estilos podem ser usados para plotar vários gráficos usando diferentes escalas em Y: styleOwnScale e styleLeftAxisScale. Também torna mais fácil plotar 2 ou mais parcelas de escala de escala com a mesma escala: mínimo LastValue (Menor (Volume)) máximo LastValue (Mais alto (Volume)) Plot (Close, quotPricequot, colorBlue, styleCandle) A escala é comum porque nós ajustamos valores mínimos e máximos do eixo Y Plot (Volume, quotVolumequot, colorGreen, styleHistogram styleThick styleOwnScale, minimum, maximum) Plot (MA (Volume, 15), quotMA volumequot, colorRed, styleLine styleOwnScale, minimum, maximum ) Novo estilo: styleLeftAxisScale 65536 - permite plotar mais de um gráfico usando escala comum, mas diferente da escala regular (eixo direito). Exemplo: gráfico de preço mais volume e gráfico de média móvel: Gráfico de preço de gráfico e sua média móvel Plot (Close, quotPricequot, colorWhite, styleCandle) Plote (MA (Close, 20), quotMACquot, colorRed) Parâmetro (Volume, quotValumequot, colorBlue, styleLeftAxisScale styleHistogram styleThick) Lote (MA (Volume, 15), quotMAVquot, colorLightBlue, styleLeftAxisScale) Novos parâmetros tornam também fácil traçar fitas, por exemplo: Plot (Close, quotPricequot, ColorBlue, styleCandle) Plot (2, define a altura da fita em percentual da largura do painel quotRibbonquot, IIf (acima, colorGreen, IIf (baixo, colorRed, 0)), escolha color styleOwnScalestyleAreastyleNoLabel, -0,5, 100) O AmiBroker permite criar parâmetros definidos pelo usuário. Tais parâmetros estão então disponíveis através da caixa de diálogo Parâmetros para ajuste rápido e rápido do indicador. As funções de parâmetro mais utilizadas são (clique nos links para obter uma descrição mais detalhada): Eles permitem definir seus próprios parâmetros em seus indicadores. Uma vez que as funções Param estão incluídas na fórmula, você pode clicar com o botão direito do mouse sobre o painel de gráfico e selecionar quotParametersquot ou pressionar CtrlR e alterá-las através da caixa de diálogo Parâmetros e obter resposta imediata. O exemplo mais simples é o seguinte: período Parâmetro (RSI período 12. 2. 50. 1) Traçar (RSI (período), RSI (período) colorRed) Clique com o botão direito sobre o gráfico e escolha quotParametersquot e mova o controle deslizante e você Ver RSI traçadas com diferentes períodos immediatelly como você move o controle deslizante. O código de exemplo abaixo mostra como usar ParamStr para obter o símbolo ticker e ParamColor para obter cores. Ticker ParamStr (ticker, MSFT) sp Param (período de MA 12. 2. 100) PlotForeign (ticker, gráfico de ticker, ParamColor (preço cor. ColorBlack), styleCandle) , MA ParamColor (MA Cor. ColorRed)) A seguinte fórmula de amostra (AmiBroker mailing list) que permite alinhar visualmente pico de pico de preços com seno curva no gráfico: Cycle Param (Cycle Months. 26412mth, 221mth xfactor Param (Esticar 1. 0.1, 2. 0.1) 11yr, 22yr xshift Parâmetro (slide 0, - 22. 22. 2) 3.1416 Curva de 2 curvas 15 dias x 2 3.1416 Cyclexfactor y sin (Cum (x) - Xshift) Plot (C Diário Gráfico. colorBlack. styleCandle styleNoLabel) Plot (y, ciclo WriteVal (Cyclexfactor 22. 1.0) meses, colorBlue, styleLine styleNoLabel styleOwnScale) Clique com o botão direito do mouse sobre o gráfico e escolha quotParametersquot e mova os controles deslizantes e você verá Imediatamente refletindo suas alterações. Para obter mais informações sobre parâmetros definíveis pelo usuário, verifique também Tutorial: Usando a interface arrastar e soltar Traçar textos em posições arbitrárias no gráfico AmiBroker agora permite a anotação do gráfico com o texto colocado em qualquer posição x, y especificada no nível da fórmula usando Nova função PlotText. PlotText (quottextquot, x, y, cor, bkcolor colorDefault) onde x - é x-coordenada em barras (como em LineArray) y - é y-coordenada em dólares cor é cor de texto, bkcolor é cor de fundo. Se bkcolor não é especificado (ou igual a colorDefault) o texto é escrito com fundo TRANSPARENTE, qualquer outro valor faz com que o plano de fundo sólido com a cor de fundo especificada Plot (C. Price. ColorBlack. StyleLine) Plot (MA 20) MA20. ) Dist 1.5 ATR (10) PlotShapes (Comprar shapeUpArrow Vender shapeDownArrow IIf (Comprar colorGreen. ColorRed)) Gradient preenchimento do fundo AmiBroker 4.90 permite preencher fundo indicador com a mudança gradual de cor. Para conseguir isso você precisa usar a nova função SetChartBkGradientFill (topcolor, bottomcolor, titlebkcolor default) A função permite que os indicadores de preenchimento de cor de gradiente de fundo. Observe que isso é independente da cor do plano de fundo do gráfico (a cor do plano de fundo preenche todo o painel, o preenchimento do gradiente é apenas para o interior do gráfico real, portanto a área dos eixos não é afetada pelo preenchimento do gradiente). Os parâmetros são os seguintes: topcolor - especifica a cor superior do gradiente preencher bottomcolor - especifica a cor inferior do gradiente fill titlebkcolor - (opcional) a cor de fundo do texto do título. Se não for especificado, a cor superior é automaticamente usada para o plano de fundo do título. SetChartBkGradientFill (ParamColor (BgTop. ColorWhite), ParamColor (BgBottom. ColorLightYellow)) A versão 5.60 traz gráficos de área de gradiente nativos. Para exibir um gráfico de gradiente simples, basta usar styleGradient na chamada de função Plot (). Por padrão, a cor do gradiente superior é especificada pelo parâmetro de cor na função Plot (), a cor do gradiente inferior é a cor de fundo. StyleGradient pode ser combinado com styleLine. Um gráfico de área de gradiente simples pode ser exibido usando: Plot (C. C. colorDefault. StyleGradient styleLine) Para controle detalhado sobre cores de gradiente e linha de base há uma função extra SetGradientFill (topcolor, bottomcolor, baseline, baselinecolor) que deve ser chamado antes Plot (). Quando você usa a função SetGradientFill, a cor do gradiente superior é especificada pelo argumento da cor, a cor do gradiente inferior é especificada pelo botttomcolor. Parâmetros opcionais (baselinebaselinecolor) permitem gráfico de gradiente reverso (como equidade subaquática) e 3 gradientes de cor top-gtbaseline-gtbottom. Veja o código de Equidade Subaquática, por exemplo, uso do gráfico de gradiente inverso (com linha de base na parte superior). O parâmetro Baseline especifica a posição do eixo Y da linha de base do gráfico. O parâmetro baselinecolor especifica a cor do gradiente que deve ser usado nesse nível. Se baselinecolor não for especificado, então somente o gradiente de 2 cores será plotado (topcolor-gtbottomcolor). Por exemplo, para exibir gradiente de três cores Taxa de Mudança que usará verde como quottopquot cor para valores positivos, cor de fundo como quotbaselinequot cor e vermelho como quotbottomquot cor para valores negativos é suficiente para escrever: SetGradientFill (colorGreen top. ColorRed bottom. Nível de linha de base GetChartBkColor () cor de linha de base) Plot (ROC (C.14), ROC. colorLightOrange. StyleLine styleGradient. Null. Null 0.- 1) O gráfico resultante será exibido da seguinte forma (usando o tema de gráfico básico): Versão 5.60 Permite definir a largura da linha além de styleThick que era a única opção antes. Agora o 9o parâmetro de Plot () define o pixel ou a largura de porcentagem do gráfico dado. O padrão é 1 pixel. Os valores positivos especificam a largura do pixel, os valores negativos especificam a largura em percentagem da largura da barra atual. Assim, por exemplo -20 lhe dará largura dinâmica que é 20 de largura de barra. Exemplo: Plot (C) Close (), colorDefault, styleBar, Null, Null, 0. 1. - 20 largura de linha como porcentagem da barra) À medida que você aumenta o zoom, as barras ficarão mais espessas e grossas. Agora você pode obter linhas super espessas como mostrado no exemplo abaixo (gráfico de linha de 10 pixels de espessura): Plot (C: Close, colorRed, styleLine, Null, Null, 0. 1. 10 10 pixels de largura) Como você já sabe cada Plot tem seu próprio nome que é usado para criar uma seqüência de título que exibe nomes e valores de indicadores. AmiBroker no entanto permite que você substituir este mecanismo automático e definir sua própria seqüência de título a partir do zero. A variável Title reserved é usada para isso. Você apenas atribui uma string para ele e ele será exibido no gráfico em vez de gerado automaticamente. Também há mais duas variáveis reservadas (GraphXSpace e GraphZOrder) que permitem ajustar a aparência do indicador. Todos eles estão descritos na tabela abaixo.
No comments:
Post a Comment