Multi Time Frame Moving Average Metastock
O suporte de vários quadros de tempo na AFL Release 4.41 traz habilidade para usar vários intervalos de tempo (intervalos de barras) em uma única fórmula. As funções do período de tempo podem ser divididas em 3 grupos funcionais: quadro de tempo de comutação de O, H, L, C, V, OI, matrizes médias: TimeFrameSet. TimeFrameRestore compressingexpanding arrays individuais para o intervalo especificado: TimeFrameCompress, TimeFrameExpand acesso imediato a matrizes de volume de preço em diferentes intervalos de tempo: TimeFrameGetPrice O primeiro grupo é usado quando sua fórmula precisa executar alguns cálculos em indicadores em diferentes intervalos de tempo do que o selecionado atualmente. Por exemplo, se você precisar calcular a média móvel de 13 barras em dados de 5 minutos e a média exponencial de 9 barras de dados horários, enquanto o intervalo atual é de 1 minuto, você escreveria: TimeFrameSet (in5Minute) muda para a moldura de 5 minutos MA agora opera com dados de 5 minutos , MA513 mantém pressionado em 13 barras MA de barras de 5min ma513 MA (C.13) TimeFrameRestore () restaura o frame de tempo para o TimeFrameSet original (inHourly) alterna agora para mah9 por hora EMA (C.9) 9 bar média móvel de dados horários TimeFrameRestore () Tempo de restauração de restauração para o traçado original (fechar. Preço. ColorWhite. StyleCandle) trama plotada média expandida (TimeFrameExpand (ma513, in5Minute), média móvel de 13 bar de barras de 5 min. ColorRed) Plot (TimeFrameExpand (mah9, inHourly), 9 Barra de média móvel a partir de barras a hora. ColorRed) TimeFrameSet (intervalo) - substitui os atuais conjuntos de volume de preços incorporados: aberto, alto, baixo, fechado, volume, aberto, médio com barras compactadas no tempo do intervalo especificado, uma vez que você mudou para uma diferença Todos os cálculos e indicadores incorporados funcionam no período de tempo selecionado. Para voltar ao intervalo de intervalo original TimeFrameRestore () funciton. Se você deseja chamar TimeFrameSet novamente com intervalo diferente, você deve restaurar o período de tempo original primeiro usando TimeFrameRestore (). Intervalo é intervalo de tempo em segundos. Por exemplo: 60 é uma barra de um minuto. Você deve usar constantes convenientes para intervalos comuns: in1Minute, in5Minute, in15Minute, inHourly, inDaily, inWeekly, in Monthly. Com a versão 4.70, você também pode especificar intervalos de N-tick. Isso é feito passando o valor NEGATIVO como intervalo. Por exemplo, -5 dará compressão da barra de 5-tick e -133 dará a compactação de 133-tick. Observe que o uso de intervalos de N-tick funciona somente se seu banco de dados usar o intervalo de tempo base do Tick definido na caixa de diálogo File - gt Database Settings. TimeFrameSet (- 133) alterna para 133-tick intervalo TimeFrameRestore () - restaura arrays de preços substituídos por SetTimeFrame. Note que apenas as variáveis incorporadas OHLC, V, OI e Avg são restauradas no período de tempo original quando você chama TimeFrameRestore (). Todas as outras variáveis criadas quando estão em diferentes intervalos de tempo permanecem compactadas. Para descompactá-los para o intervalo original, você deve usar TimeFrameExpand. Depois de mudar o período de tempo usando TimeFrameSet, todas as funções AFL operam neste período de tempo até que você altere o período de tempo para o intervalo original usando TimeFrameRestore ou configure novamente o intervalo diferente usando TimeFrameSet. É uma boa idéia SEMPRE chamar TimeFrameRestore quando terminar o processamento em outros prazos. Quando o intervalo de tempo é alternado para o intervalo diferente do original, os resultados de todas as funções chamadas desde TimeFrameSet também são comprimidos no tempo. Se você quiser exibi-los no período de tempo original, você precisaria expandi-los conforme descrito mais tarde. As variáveis criadas e atribuídas antes da chamada para TimeFrameSet () permanecem no período em que foram criadas. Esse comportamento permite misturar intervalos de tempo diferentes ilimitados em fórmula única. Observe que você só pode comprimir dados de intervalos mais curtos para um intervalo mais longo. Então, ao trabalhar com dados de 1 minuto, você pode comprimir para 2, 3, 4, 5, 6. Dados de N-minutos. Mas ao trabalhar com dados de 15 minutos, você não pode obter barras de dados de 1 minuto. Da mesma forma, se você tiver apenas dados do EOD, você não pode acessar os prazos intradiários. Segundo grupo: TimeFrameCompressTimeFrameExpand permitir comprimir e expandir arrays individuais em diferentes intervalos de tempo. Especialmente vale a pena mencionar TimeFrameExpand que é usado para descomprimir variáveis de matriz que foram criadas em diferentes intervalos de tempo. A descompressão é necessária para exibir corretamente a matriz criada em diferentes intervalos de tempo. Por exemplo, se você deseja exibir a média móvel semanal, ele deve ser expandido para que os dados de uma barra semanal cobre cinco barras diárias (segunda a sexta-feira) da semana correspondente. TimeFrameExpand (array, intervalo, modo expandLast) - expande a matriz de tempo comprimido do intervalo de tempo para o frame de tempo base (o intervalo deve corresponder ao valor usado em TimeFrameCompress ou TimeFrameSet) Modos disponíveis: expandLast - o valor comprimido é expandido a partir da última barra dentro Período dado (por exemplo, semanalmente, o closehighlow está disponível na barra do Fridays) expandFirst - o valor comprimido é expandido a partir da primeira barra dentro de um período determinado (então, por exemplo, semanal aberto está disponível na barra de segundas-feiras) expandPoint - a matriz resultante obtém apenas valores vazios Para a última barra dentro de um período determinado (todas as barras restantes são Nulas (vazias)). Advertência: expandFirst usado em preço diferente do aberto pode olhar para o futuro. Por exemplo, se você criar a série ALTA semanal, expandi-la para o intervalo diário usando expandFirst permitirá que você saiba em LUNA o que foi alto durante toda a semana. O TimeFrameCompress é fornecido para a integridade e pode ser usado quando você deseja compactar uma única matriz sem afetar as matrizes OHLC, V incorporadas. Se você chamar TimeFrameCompress não afetar os resultados de outras funções. Wc TimeFrameCompress (fechar in time), agora o período de tempo ainda está inalterado (digamos diariamente) e nosso MA operará em dados diários MA diariamente (C.14), mas se chamarmos MA em matriz compactada, ele dará MA a partir de outro período de tempo Semanal MA (wc, 14) note que o argumento é matriz de compressão no tempo Plot (dailyma, DailyMA. ColorRed) semanal TimeFrameExpand (weeklyma, inWeekly) expandir para exibição Plot (weeklyma, WeeklyMA. ColorBlue) Durante esta fórmula, o período de tempo permaneceu no original Configurando nós apenas comprimimos uma única matriz. TimeFrameCompress (array, intervalo, modo compressLast) - comprime a matriz única para o intervalo dado usando os modos de modo de compressão fornecidos: compressLast - último (fechar) o valor da matriz dentro do intervalo compressOpen - valor aberto da matriz dentro do intervalo compressHigh - valor mais alto do Array dentro do intervalo compressLow - valor mais baixo da matriz dentro do intervalo compressVolume - soma dos valores da matriz dentro do intervalo Graph0 TimeFrameExpand (TimeFrameCompress (Close. InWeekly. CompressLast), inWeekly. ExpandLast) Graph1 TimeFrameExpand (TimeFrameCompress (Open. InWeekly. CompressOpen) InWeekly. ExpandFirst) O terceiro grupo consiste em apenas uma função útil: TimeFrameGetPrice, que permite referenciar preço e volume de outros prazos sem alternar compressingexpanding time frames. Apenas uma chamada de função para recuperar o preço de um período de tempo maior. Ele também permite referenciar não apenas barras atuais, mas passadas, de prazos diferentes. TimeFrameGetPrice (pricefield, intervalo, shift 0, modo expandFirst) - faz referência a campos OHLCV de outros prazos. Isso funciona immediatelly sem precisar chamar TimeFrameSet. Campo de preço é um dos seguintes: quotOquot, quotHquot, quotLquot, quotCquot, quotVquot, quotIquot (open interest). Intervalo é intervalo de barras em segundos. Shift permite referenciar dados passados (valores negativos) e futuros (valores positivos) em um período de tempo maior. Por exemplo -1 dá dados de barras anteriores (como na função Ref, mas isso funciona em um período maior). TimeFrameGetPrice (O. inWeekly. - 1) dá-lhe a semana anterior Preço aberto TimeFrameGetPrice (C. inWeekly. - 3) dá-lhe semanalmente Fechar preço 3 semanas atrás TimeFrameGetPrice (H. inWeekly. - 2) dá-lhe semanalmente Preços elevados 2 semanas atrás TimeFrameGetPrice (O. inWeekly. 0) lhe dá esta semana o preço aberto. TimeFrameGetPrice (H. inDaily. - 1) dá Day High anterior ao trabalhar em dados intraday Shift funciona como na função Ref (), mas é aplicada ao período de tempo comprimido. Observe que essas funções funcionam como essas 3 funções aninhadas TimeFrameExpand (Ref (TimeFrameCompress (array, interval, compress (dependendo do campo usado)), shift), intervalo, expandFirst), portanto, se shift 0 dados compactados podem olhar para o futuro (lata semanal alta Seja conhecido na segunda-feira). Se você quiser escrever um sistema de negociação usando esta função, certifique-se de fazer referência aos dados PAST usando o valor de mudança negativa. A única diferença é que TimeFrameGetPrice é 2x mais rápido do que o ExpandCompress aninhado. Nota sobre o desempenho das funções do TimeFrame: a) Medições feitas em Athlon 1,46GHz, 18500 barras diárias compactadas para o frame de tempo semanal TimeFrameGetPrice (quotCquot, inWeekly, 0) - 0,0098 seg (9,8 milissegundos) TimeFrameSet (in Weekly) - 0,012 seg (12 milissegundos) TimeFrameRestore () - 0.006 seg (6 milissegundos) TimeFrameCompress (Close, inWeekly, compressLast) - 0.0097 seg (9.7 milissegundos) TimeFrameExpand (array, inWeekly, expandLast) - 0.0098 seg (9.8 milissegundos) b) Medições feitas em Athlon 1.46GHz, 1000 Barras diárias compactadas para funções semanais do frame de tempo abaixo de 0.0007 seg (0.7 milésimos de segundo) Como funciona internamente As funções do Time-frame não alteram o BarCount - eles apenas espremem os arrays para que você tenha as primeiras N-bars preenchidas com valores NULL e depois - last Parte da matriz contém os valores reais de tempo comprimido. É por isso que é essencial expandir os dados para o quadro original com TimeFrameExpand. A seguinte exploração simples mostra o que acontece depois de mudar para um prazo maior. Executar Exploração no símbolo atual, todas as cotações, periodicidade definida para diariamente e você verá como a coluna quitada sem compressedquot contém valores vazios no início e dados compactados semanais no final da matriz. Filtro 1 AddColumn (Fechar, fechar diariamente) TimeFrameSet (inWeekly) AddColumn (wc Close. Semanal fechado compactado) TimeFrameRestore () AddColumn (TimeFrameExpand (wc, inWeekly), fechamento semanal expandido) EXEMPLO 1: Traçando o MACD semanal e as setas cruzadas dos dados diários TimeFrameSet (inWeekly) m MACD (12. 26) MACD de dados SEMANAL TimeFrameRestore () m1 TimeFrameExpand (m, inWeekly) Plot (m1, Weekly MACD. ColorRed) PlotShapes (Cross (m1, 0) shapeUpArrow. ColorGreen) PlotShapes (Cross ( 0. m1) shapeDownArrow. ColorGreen) EXEMPLO 2: gráfico de candelabro semanal sobreposto na linha gráfico de preços diários com TimeFrameGetPrice (O. inWeekly. 0. expandPoint) wh TimeFrameGetPrice (H. inWeekly. 0. expandPoint) wl TimeFrameGetPrice (L. inWeekly. 0 ExpandPoint) wc TimeFrameGetPrice (C. inWeekly. 0. expandPoint) PlotOHLC (wo, wh, wl, wc, Weekly Close) colorWhite. StyleCandle) Plot (Close. Daily Close. ColorBlue) EXEMPLO 3: Comutador de sistema de tela tripla simplificado Para o intervalo de tempo semanal TimeFrameSet (in Weekly) whist MACD (12. 26) - Sinal (12. 26. 9) wtrend ROC (whist, 1) tendência semanal - uma semana mudança do histograma semanal macd TimeFrameRestore () expandir MACD calculado para diariamente, então Podemos usá-lo com sinais diários wtrend TimeFrameExpand (wtrend, inWeekly) elder ray bullpower High - EMA (Close. 13) bearpower Low - EMA (Close. 13) Comprar wtrend gt 0 1ª tela: tendência semanal positiva e capacidade de vida lt 0 E bearpower gt Ref (bearpower, - 1) 2 ª tela suportar o poder negativo mas subir AND H gt Ref (H. - 1) 3ª tela, se os preços fizerem uma nova alta BuyPrice Ref (H. - 1) comprar parar nível Vender 0 sair apenas por paradas ApplyStop (stopTypeProfit. StopModePercent. 30. Verdadeiro) ApplyStop (stopTypeTrailing. stopModePercent. 20. Verdadeiro) Os indicadores Listados nesta e a próxima página foram projetados para plotar semanalmente ou maiores sinais de periodicidade em qualquer gráfico do MetaStock. Essas fórmulas podem ser copiadas de arquivos de texto e coladas no MetaStock Indicator Builder ou carregadas a partir do arquivo EXE auto-instalador apropriado. As fórmulas Multi-Frame são executadas no MetaStock versão 7.0 e acima. O Equis Forum DLL é essencial para todas as fórmulas Multi-Frame. A mesma funcionalidade também está disponível para gráficos intraday com três séries intradiárias na família Multi-Frame. Uma série simula quadros de 1-240 minutos, outros quadros de 1 a 24 horas e os terceiros quadros de 1-1440 minutos. Se o indicador que você deseja não estiver listado no documento PDF (veja o link abaixo), ainda pode ser possível criar. As fórmulas Multi-Frame estão incluídas no MSTT Resource Pack ou podem ser compradas separadamente como o MF1, MF2 ou MF3 Multi-Frame kit. O custo para todas as séries 6 (D, D126, D, I, ID e X) é de apenas 49 usando o botão de pagamento MF1 na página Produtos. Os kits MF2 e MF3 custam apenas 39. Suporte, atualizações e adições a cada intervalo são garantidos por 1 ano a partir da data de compra. A mais nova série D126 define o tamanho do quadro por número de barras e possui uma função de alinhamento de quadro opcional baseada em calendário. Além das periodicidades semanais, mensais e superiores, a série D possui quadros de semana dividida e os quadros quinzenais da série D. Clique aqui para fazer o download de um arquivo EXE auto-instalado que contém fórmulas médias Múltiplas moldura de tempo limitado com funcionalidade EO D e I ntraday. Nome do indicador Multi-Frame D ADX Multi-Frame D ADXI Multi-Frame D ADXR Multi-Frame D DI Multi-Frame D - DI Multi-Frame D Aroon Multi-Frame D ATR Multi-Frame D AvMean Multi-Frame D BB Multi - Quadro D BB Top Multi-Frame D BB Bot Multi-Frame D BIndicador Multi-Frame D Níveis de Camarilla Multi-Frame D CCI Multi-Frame D Fechar Multi-Frame D CMF Multi-Frame D CMO Multi-Frame D Compressão Multi-Frame D Dema Multi-Frame D DMI Multi-Frame D Ehlers DCF Multi-Frame D Ehlers Force Index Multi-Frame D EMA Multi-Frame D EVS Multi-Frame D Descrição Gann-HiLo Avge Movimento Direcional Avge Índice de Movimento Direcional Avge Direcional Índice de Movimento Classificação Direcional Movimento DI Movimento Direcional - DI Aroon Média Verdadeiro Rácio Valor Médio ou Médio Bandas Bollinger Band Bollinger Top Bollinger Baixa Baixo Indicador B (força da tendência) Níveis Camarilla Índice de Canal de Mercadorias Preço de Fechamento Chaikin Dinheiro Fluxo Chande Momentum Oscilador Compressa a periodicidade do gráfico Duplo Exponencial Móvel Dinâmico Médio Índice Momentum Ehlers Fator de Coeficiente Distante Ehlers Índice de Força Exponencial Mover Médio Erlanger Volume Swing Gann-HiLo
Comments
Post a Comment