![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
realmente obrigado mladen!
Eu o vi agora.
Eu fiz o mesmo. dê uma olhada:
for_a_new_life-1.ex4
for_a_new_life-1_1.mq4
Eu estava testando a versão minha e vou testar a sua também.
Se este indicador estiver correto, fizemos um ótimo trabalho para capturar pontos de inversão.
é porque a diferença entre as duas médias móveis divididas pela força 2 vezes, pode mostrar quando o preço está revertendo em uma tendência com mais sensibilidade. Teste-o com outro indicador de fronteira e acho que você vai gostar.![](https://c.mql5.com/forextsd/smiles/smile.png)
algumas fotos:
Estou muito feliz porque esta é minha primeira contribuição para o fórum. E eu não poderia fazê-lo sem a sua ajuda.
Muito obrigado, Mladen!Kelch
Houve apenas uma mudança: mudar a direção da mesma. Parece que desta forma ela está mostrando valores um pouco mais lógicos. Tente desta forma também
for_a_new_life-1.01.mq4
Olá, Mladen,
Eu fiz EA a partir do icustom depois de compilá-lo sem erro e sem aviso, mas eu fui Backtest sem nenhuma OP?
Posso postar minha EA neste tópico que eu gostaria de receber sua ajuda para consertá-la.
Obrigado,
melhor consideração
Olá, Mladen,
Eu fiz EA a partir do icustom depois de compilá-lo sem erro e sem aviso, mas eu fui Backtest sem nenhuma OP?
Posso postar minha EA neste tópico que eu gostaria de receber sua ajuda para consertá-la.
Obrigado,
melhor consideraçãoDova
Coloque-a para que alguém dê uma olhada
Kelch
Houve apenas uma mudança: mudar a direção da mesma. Parece que desta forma ela está mostrando valores um pouco mais lógicos. Tente desta forma também
for_a_new_life-1.01.mq4Obrigado mladen!
Aqui meu julgamento e...
Esta ea enquanto compila não é ok nenhum erro ou aviso, mas nenhuma OP quando BT.
Eu gostaria que esta ea pudesse reverter de OP antes,
exemplo se a posição já COMPRAR do que a próxima seta de VENDA da vela é exibida posição reversa automática de COMPRAR para VENDER e visto versa.
adicionar Trailling Stop também.
Desculpe pelo meu inglês ruim
pfi.ex4ea_pfi.mq4
Obrigado
Aqui meu julgamento e...
Esta e enquanto compila não há erro ou aviso, mas não há OP quando BT.
Eu gostaria que esta ea pudesse reverter de OP antes,
exemplo se a posição já COMPRAR do que a próxima seta de VENDA da vela é exibida posição reversa automática de COMPRAR para VENDER e visto versa.
adicionar Trailling Stop também.
Desculpe pelo meu inglês ruim
pfi.ex4ea_pfi.mq4
ObrigadoPara a clareza de quem lê aquele post: o que significa exatamente o "reverso da OP" ou "sem OP quando BT"?
Para a clareza de quem lê aquele post: o que significa exatamente o "reverso da OP" ou "sem OP quando BT"?
Quero dizer OP= Posição Aberta, BT= Backtest.
Depois de eu fazer o backtest, não há posições abertas.
Quando já houver uma posição aberta Comprar, a próxima vela vender setas/sinal aparece automaticamente fechar posições longas e abrir posições curtas e vice versa (posição reversa automática).
Espero que meu explanatian deixe claro...
Obrigado
Saudações a todos ....
Perdoe se estiver no lugar errado, por causa de meus novos membros .
peço o seu apoio ao código mestre ,
a codificar este indicador em EA .
com a intenção da EA poderá funcionar como eu queria, ou seja, :
1.Abrir a compra automática quando o preço tocar a linha TL1 .
2.abrir venda automática quando o preço tocar a linha TL2
3.Abrir automaticamente a compra quando o preço estiver acima da linha TL2
4.Abrir vender automaticamente quando o preço estiver acima da linha TL1
5.fechamento da compra automática quando o preço toca a linha TL2 proceder diretamente a venda aberta
6.Fechado vender automaticamente quando o preço toca a linha TL1 proceder diretamente a compra aberta
7.nomor 3 e 4 fechados manualmente ( sem TrailingStop ) .
8.SL 50 pips e colocado no lote 0.1
9.Time frame H4 para todos os pares .
muito obrigado
/ / + ----------------------------------------------- ------------------- +
/ / / | SHI_Channel_true.mq4 |
/ / | Copyright © 2004 , Shurka & Kevin |
/ / | |
/ / + ----------------------------------------------- ------------------- +
# direitos autorais " Copyright © 2004 , Shurka & Kevin "
# link de propriedade " " "
/ / ----
# Janela_do_indicador_do_cartão_de_propriedade
# tampão_indicador de propriedade 1
# indicador de propriedade_color1 Vermelho
ExtMapBuffer1 duplo [ ] ;
/ / ---- Parâmetros de entrada
allBars externo int = 240 ;
BarrasForFract int externo = 0 ;
Barra de Corrente int = 0 ;
Passo duplo = 0 ;
int B1 = -1 , B2 = -1 ;
UpDown int = 0 ;
duplo P1 = 0 , P2 = 0 , PP = 0 ;
int i = 0 , AB = 300 , BFF = 0 ;
ishift int = 0 ; ishift int = 0 ; ishift int = 0 ; ishift int = 0 ;
duplo iprice = 0 ; P2 = 0
data/hora T1 , T2 ;
/ / + ----------------------------------------------- ------------------- +
/ / | Função de inicialização do indicador personalizado |
/ / + ----------------------------------------------- ------------------- +
int init ( )
{
/ / ---- Indicadores
SetIndexStyle ( 0 , DRAW_ARROW ) ;
SetIndexArrow ( 0 , 164 ) ;
SetIndexBuffer ( 0 , ExtMapBuffer1 ) ; SetIndexBuffer ( 0 , ExtMapBuffer1 ) ;
SetIndexEmptyValue ( 0 , 0.0 ) ;
/ / ----
retorno ( 0 ) ;
}
/ / + ----------------------------------------------- ------------------- +
/ / | Desinicialização da função indicadora do cliente |
/ / + ----------------------------------------------- ------------------- +
deinit int ( )
{
ObjectDelete ( " TL1 " ) ;
ObjectDelete ( " TL2 " ) ;
ObjectDelete ( " MIDL " ) ;
Comentário ( " " " ) ;
/ / ----
retorno ( 0 ) ;
}
/ / + ----------------------------------------------- ------------------- +
/ / | |
/ / + ----------------------------------------------- ------------------- +
DelObj vazio ( )
{
ObjectDelete ( " TL1 " ) ;
ObjectDelete ( " TL2 " ) ;
ObjectDelete ( " MIDL " ) ;
}
/ / + ----------------------------------------------- ------------------- +
/ / | Função de iteração de indicador personalizada |
/ / + ----------------------------------------------- ------------------- +
int start ( )
{
IndicadorBarras_contadas = int ( ) ;
/ / ----
se ( ( AllBars == 0 ) | | ( Bars < AllBars ) )
AB = Barras ;
else AB = AllBars ; / / AB - êîëè ÷ ÷ åñòââî Ian èòûâàåìûõ áàðîâ
se ( BarsForFract > 0 )
BFF = BarsForFract ;
mais
troca ( Período ( ) )
{
caso 1 : BFF = 12 ; pausa;
caso 5 : BFF = 48 ; pausa;
caso 15 : BFF = 24 ; pausa;
caso 30 : BFF = 24 ; pausa;
caso 60 : BFF = 12 ; pausa;
caixa 240 : BFF = 15 ; pausa;
caixa 1440: BFF = 10 ; pausa;
caixa 10080 : BFF = 6 ; pausa;
padrão : DelObj ( ), retorno ( -1 ) ; pausa;
}
CurrentBar = 2 ; / / ñ ÷ ñ òðåòüåãî Suspected èòàåì , ÷ òîáû ôðàêòàë " çàêðåïèëñÿ
B1 = -1 ;
B2 = -1 ;
UpDown = 0 ;
enquanto ( ( ( B1 == -1 ) | | ( B2 == -1 ) ) && ( CurrentBar < AB ) )
{
/ / UpDown = 1 ÷÷ eo CIA ïåðâûé ôðàêòàë íàéäåí ñâåðõó , UpDown = -1 ÷÷ eo CIA ïåðâûé ôðàêòààë
/ / íàéäåí ñíèçó , CIA UpDown = 0 ÷ ¸ AU EO ôðàêòààë he íàéäåí .
/ / A1 a2 è - ÿ áààðîâ íîìåðà ôðàêòàëàìè , ÷ ADAC IEO ñòðîèì îïîðíóþ ëèíèþ .
/ / È D1 D2 - ÷ öåíû ñîîòâåòñòâåííî ADAC êîòîðûå áóäåì ëèíèþ ïðîâîäèòü
if ( UpDown < 1 ) && ( CurrentBar === Mais baixo ( Symbol ( ) , Period ( ) , MODE_LOW , BFF * 2 + 1 ,
CurrentBar - BFF ) )
{
se ( UpDown === 0 )
{
UpDown = -1 ;
B1 = Barra de Corrente ;
P1 = Baixo [ B1 ] ;
}
senão
{
B2 = Barra de corrente ;
P2 = Baixo [ B2 ] ;
}
}
if ( UpDown > -1 ) && ( CurrentBar === Highest ( Símbolo ( ) , Período ( ) , MODE_HIGH , BFF * 2 + 1 ,
CurrentBar - BFF ) )
{
se ( UpDown === 0 )
{
UpDown = 1 ;
B1 = Barra de Corrente ;
P1 = Alto [ B1 ] ;
}
senão
{
B2 = Barra de corrente ;
P2 = Alto [ B2 ] ;
}
}
Barra de corrente + + ;
}
se ( ( B1 == -1 ) | | | ( B2 == -1 ) )
{
DelObj ( ) ;
retornar ( -1 ) ;
} / / Eo ÷ CIA he íàøëè ôðàêòàëîâ ñðåäè 300 áàðîâ 8-)
Passo = ( P2 - P1 ) / ( B2 - B1 ) / / / Au ÷ èñëèëèè OAA , åñëèè ïîëèèèòåëüíûé II , OI êàíàë íèñõîäÿùèé
P1 = P1 - B1 * Etapa ;
B1 = 0 ; / / / ïåðåñòàââëÿåì öåíó ïåðâûé AAD è ê íóëþ
/ / À ÷÷ eo Oi òåïåðü îïîðíóþ ïðîòèâîïîëîæíîé ëèíèèè êàíàëà .
ishift = 0 ;
iprice = 0 ;
se ( UpDown == 1 )
{
PP = Baixa [ 2 ] - 2 * Etapa ;
para (i = 3 ; i < = B2 ; i + + )
{
se ( Baixo [ i ] < PP + Passo * i )
PP = Baixa [ i ] - i * Etapa ;
}
se ( Baixo [ 0 ] < PP )
{
ishift = 0 ;
iprice = PP ;
}
se ( Baixo [ 1 ] < PP + Passo )
{
ishift = 1 ;
iprice = PP + Passo ;
}
se ( Alto [ 0 ] > P1 )
{
ishift = 0 ;
iprice = P1 ;
}
se ( Alto [ 1 ] > P1 + Passo )
{
ishift = 1 ;
iprice = P1 + Passo ;
}
}
senão
{
PP = Alto [ 2 ] - 2 * Passo ;
para (i = 3 ; i < = B2 ; i + + )
{
se ( Alto [ i ] > PP + Passo * i )
PP = Alto [ i ] - i * Passo ;
}
se ( Baixo [ 0 ] < P1 )
{
ishift = 0 ;
iprice = P1 ;
}
se ( Baixo [ 1 ] < P1 + Passo )
{
ishift = 1 ;
iprice = P1 + Passo ;
}
se ( Alto [ 0 ] > PP )
{
ishift = 0 ;
iprice = PP ;
}
se ( Alto [ 1 ] > PP + Passo )
{
ishift = 1 ;
iprice = PP + Passo ;
}
}
/ / / Òåïåðü ïåðåñòàâèì êîíå ÷ è íóþ öåíó he AAD AA , ÷ òîáû ëèíèèè êàíàà ðèñîâààëèñü ïîäëèèíåå
P2 = P1 + AB * Etapa ;
T1 = Tempo [ B1 ] ;
T2 = Tempo [ AB ] ;
/ / Åñëè he áûëî ïåðåñå ÷ åíèÿ êàíààà , oi 0 , EIA ÷ å ñòàâèì Ineno .
se ( iprice ! = 0 )
ExtMapBuffer1 [ ishift ] = iprice ;
DelObj ( ) ;
ObjectCreate ( " TL1 " , OBJ_TREND , 0 , T2 , PP + Etapa * AB , T1 , PP ) ;
ObjectSet ( " TL1 " , OBJPROP_COLOR , Lime ) ;
ObjectSet ( " TL1 " , OBJPROP_WIDTH , 2 ) ;
ObjectSet ( " TL1 " , OBJPROP_STYLE , STYLE_SOLID ) ; ObjectSet ( " TL1 " , OBJPROP_STYLE , STYLE_SOLID ) ;
ObjectCreate ( " TL2 " , OBJ_TREND , 0 , T2 , P2 , T1 , P1 ) ;
ObjectSet ( " TL2 " , OBJPROP_COLOR , White ) ;
ObjectSet ( " TL2 " , OBJPROP_WIDTH , 2 ) ;
ObjectSet ( " TL2 " , OBJPROP_STYLE , STYLE_SOLID ) ;
ObjectCreate ( " MIDL " , OBJ_TREND , 0 , T2 , ( P2 + PP + Passo * AB ) / 2 , T1 , ( P1 + PP ) / 2 ) ;
ObjectSet ( " MIDL " , OBJPROP_COLOR , Yellow ) ;
ObjectSet ( " MIDL " , OBJPROP_WIDTH , 1 ) ;
ObjectSet ( " MIDL " , OBJPROP_STYLE , STYLE_DOT ) ;
Comentário ( " Channel size = " , DoubleToStr ( MathAbs ( PP - P1 ) / Point , 0 ) inclinação = " ,
DoubleToStr ( - Passo / Ponto , 2 ) ;
/ / ----
retorno ( 0 ) ;
}
/ / + ----------------------------------------------- ------------------- +
Saudações a todos ....
perdoar se estiver em lugar errado, por causa de meus novos membros .
peço seu apoio ao código mestre ,
a codificar este indicador em EA .
com a intenção da EA poderá funcionar como eu queria, ou seja, :
1.Abrir a compra automática quando o preço tocar a linha TL1 .
2.abrir venda automática quando o preço tocar a linha TL2
3.Abrir automaticamente a compra quando o preço estiver acima da linha TL2
4.Abrir vender automaticamente quando o preço estiver acima da linha TL1
5.fechamento da compra automática quando o preço toca a linha TL2 proceder diretamente a venda aberta
6.Fechado vender automaticamente quando o preço toca a linha TL1 proceder diretamente a compra aberta
7.nomor 3 e 4 fechados manualmente ( sem TrailingStop ) .
8.SL 50 pips e colocado no lote 0.1
9.Time frame H4 para todos os pares .
muito obrigado
/ / + ----------------------------------------------- ------------------- +
/ / / | SHI_Channel_true.mq4 |
/ / | Copyright © 2004 , Shurka & Kevin |
/ / | |
/ / + ----------------------------------------------- ------------------- +
# direitos autorais " Copyright © 2004 , Shurka & Kevin "
# link de propriedade " " "
/ / ----
# janela_do_indicador_do_cartão_de_propriedade
# tampão_indicador de propriedade 1
# indicador de propriedade_color1 Vermelho
ExtMapBuffer1 duplo [ ] ;
/ / ---- Parâmetros de entrada
allBars externo int = 240 ;
BarrasForFract int externo = 0 ;
Barra de Corrente int = 0 ;
Passo duplo = 0 ;
int B1 = -1 , B2 = -1 ;
UpDown int = 0 ;
duplo P1 = 0 , P2 = 0 , PP = 0 ;
int i = 0 , AB = 300 , BFF = 0 ;
ishift int = 0 ; ishift int = 0 ; ishift int = 0 ; ishift int = 0 ;
duplo iprice = 0 ; P2 = 0
data/hora T1 , T2 ;
/ / + ----------------------------------------------- ------------------- +
/ / | Função de inicialização do indicador personalizado |
/ / + ----------------------------------------------- ------------------- +
int init ( )
{
/ / ---- Indicadores
SetIndexStyle ( 0 , DRAW_ARROW ) ;
SetIndexArrow ( 0 , 164 ) ;
SetIndexBuffer ( 0 , ExtMapBuffer1 ) ; SetIndexBuffer ( 0 , ExtMapBuffer1 ) ;
SetIndexEmptyValue ( 0 , 0.0 ) ;
/ / ----
retorno ( 0 ) ;
}
/ / + ----------------------------------------------- ------------------- +
/ / | Desinicialização da função indicadora do cliente |
/ / + ----------------------------------------------- ------------------- +
deinit int ( )
{
ObjectDelete ( " TL1 " ) ;
ObjectDelete ( " TL2 " ) ;
ObjectDelete ( " MIDL " ) ;
Comentário ( " " " ) ;
/ / ----
retorno ( 0 ) ;
}
/ / + ----------------------------------------------- ------------------- +
/ / | |
/ / + ----------------------------------------------- ------------------- +
DelObj vazio ( )
{
ObjectDelete ( " TL1 " ) ;
ObjectDelete ( " TL2 " ) ;
ObjectDelete ( " MIDL " ) ;
}
/ / + ----------------------------------------------- ------------------- +
/ / | Função de iteração de indicador personalizada |
/ / + ----------------------------------------------- ------------------- +
int start ( )
{
IndicadorBarras_contadas = int ( ) ;
/ / ----
se ( ( AllBars == 0 ) | | ( Bars < AllBars ) )
AB = Barras ;
else AB = AllBars ; / / AB - êîëè ÷ ÷ åñòââî Ian èòûâàåìûõ áàðîâ
se ( BarsForFract > 0 )
BFF = BarsForFract ;
mais
troca ( Período ( ) )
{
caso 1 : BFF = 12 ; pausa;
caso 5 : BFF = 48 ; pausa;
caso 15 : BFF = 24 ; pausa;
caso 30 : BFF = 24 ; pausa;
caso 60 : BFF = 12 ; pausa;
caixa 240 : BFF = 15 ; pausa;
caixa 1440: BFF = 10 ; pausa;
caixa 10080 : BFF = 6 ; pausa;
padrão : DelObj ( ), retorno ( -1 ) ; pausa;
}
CurrentBar = 2 ; / / ñ ÷ ñ òðåòüåãî Suspected èòàåì , ÷ òîáû ôðàêòàë " çàêðåïèëñÿ
B1 = -1 ;
B2 = -1 ;
UpDown = 0 ;
enquanto ( ( ( B1 == -1 ) | | ( B2 == -1 ) ) && ( CurrentBar < AB ) )
{
/ / UpDown = 1 ÷÷ eo CIA ïåðâûé ôðàêòàë íàéäåí ñâåðõó , UpDown = -1 ÷÷ eo CIA ïåðâûé ôðàêòààë
/ / íàéäåí ñíèçó , CIA UpDown = 0 ÷ ¸ AU EO ôðàêòààë he íàéäåí .
/ / A1 a2 è - ÿ áààðîâ íîìåðà ôðàêòàëàìè , ÷ ADAC IEO ñòðîèì îïîðíóþ ëèíèþ .
/ / È D1 D2 - ÷ öåíû ñîîòâåòñòâåííî ADAC êîòîðûå áóäåì ëèíèþ ïðîâîäèòü
if ( UpDown < 1 ) && ( CurrentBar === Mais baixo ( Symbol ( ) , Period ( ) , MODE_LOW , BFF * 2 + 1 ,
CurrentBar - BFF ) )
{
se ( UpDown === 0 )
{
UpDown = -1 ;
B1 = Barra de Corrente ;
P1 = Baixo [ B1 ] ;
}
senão
{
B2 = Barra de corrente ;
P2 = Baixo [ B2 ] ;
}
}
if ( UpDown > -1 ) && ( CurrentBar === Highest ( Símbolo ( ) , Período ( ) , MODE_HIGH , BFF * 2 + 1 ,
CurrentBar - BFF ) )
{
se ( UpDown === 0 )
{
UpDown = 1 ;
B1 = Barra de Corrente ;
P1 = Alto [ B1 ] ;
}
senão
{
B2 = Barra de corrente ;
P2 = Alto [ B2 ] ;
}
}
Barra de corrente + + ;
}
se ( ( B1 == -1 ) | | | ( B2 == -1 ) )
{
DelObj ( ) ;
retornar ( -1 ) ;
} / / Eo ÷ CIA he íàøëè ôðàêòàëîâ ñðåäè 300 áàðîâ 8-)
Passo = ( P2 - P1 ) / ( B2 - B1 ) / / / Au ÷ èñëèëèè OAA , åñëèè ïîëèèèòåëüíûé II , OI êàíàë íèñõîäÿùèé
P1 = P1 - B1 * Etapa ;
B1 = 0 ; / / / ïåðåñòàââëÿåì öåíó ïåðâûé AAD è ê íóëþ
/ / À ÷÷ eo Oi òåïåðü îïîðíóþ ïðîòèâîïîëîæíîé ëèíèèè êàíàëà .
ishift = 0 ;
iprice = 0 ;
se ( UpDown == 1 )
{
PP = Baixa [ 2 ] - 2 * Etapa ;
para (i = 3 ; i < = B2 ; i + + )
{
se ( Baixo [ i ] < PP + Passo * i )
PP = Baixa [ i ] - i * Etapa ;
}
se ( Baixo [ 0 ] < PP )
{
ishift = 0 ;
iprice = PP ;
}
se ( Baixo [ 1 ] < PP + Passo )
{
ishift = 1 ;
iprice = PP + Passo ;
}
se ( Alto [ 0 ] > P1 )
{
ishift = 0 ;
iprice = P1 ;
}
se ( Alto [ 1 ] > P1 + Passo )
{
ishift = 1 ;
iprice = P1 + Passo ;
}
}
senão
{
PP = Alto [ 2 ] - 2 * Passo ;
para (i = 3 ; i < = B2 ; i + + )
{
se ( Alto [ i ] > PP + Passo * i )
PP = Alto [ i ] - i * Passo ;
}
se ( Baixo [ 0 ] < P1 )
{
ishift = 0 ;
iprice = P1 ;
}
se ( Baixo [ 1 ] < P1 + Passo )
{
ishift = 1 ;
iprice = P1 + Passo ;
}
se ( Alto [ 0 ] > PP )
{
ishift = 0 ;
iprice = PP ;
}
se ( Alto [ 1 ] > PP + Passo )
{
ishift = 1 ;
iprice = PP + Passo ;
}
}
/ / / Òåïåðü ïåðåñòàâèì êîíå ÷ è íóþ öåíó he AAD AA , ÷ òîáû ëèíèèè êàíàà ðèñîâààëèñü ïîäëèèíåå
P2 = P1 + AB * Etapa ;
T1 = Tempo [ B1 ] ;
T2 = Tempo [ AB ] ;
/ / Åñëè he áûëî ïåðåñå ÷ åíèÿ êàíààà , oi 0 , EIA ÷ å ñòàâèì Ineno .
se ( iprice ! = 0 )
ExtMapBuffer1 [ ishift ] = iprice ;
DelObj ( ) ;
ObjectCreate ( " TL1 " , OBJ_TREND , 0 , T2 , PP + Etapa * AB , T1 , PP ) ;
ObjectSet ( " TL1 " , OBJPROP_COLOR , Lime ) ;
ObjectSet ( " TL1 " , OBJPROP_WIDTH , 2 ) ;
ObjectSet ( " TL1 " , OBJPROP_STYLE , STYLE_SOLID ) ; ObjectSet ( " TL1 " , OBJPROP_STYLE , STYLE_SOLID ) ;
ObjectCreate ( " TL2 " , OBJ_TREND , 0 , T2 , P2 , T1 , P1 ) ;
ObjectSet ( " TL2 " , OBJPROP_COLOR , White ) ;
ObjectSet ( " TL2 " , OBJPROP_WIDTH , 2 ) ;
ObjectSet ( " TL2 " , OBJPROP_STYLE , STYLE_SOLID ) ;
ObjectCreate ( " MIDL " , OBJ_TREND , 0 , T2 , ( P2 + PP + Passo * AB ) / 2 , T1 , ( P1 + PP ) / 2 ) ;
ObjectSet ( " MIDL " , OBJPROP_COLOR , Yellow ) ;
ObjectSet ( " MIDL " , OBJPROP_WIDTH , 1 ) ;
ObjectSet ( " MIDL " , OBJPROP_STYLE , STYLE_DOT ) ;
Comentário ( " Channel size = " , DoubleToStr ( MathAbs ( PP - P1 ) / Point , 0 ) inclinação = " ,
DoubleToStr ( - Passo / Ponto , 2 ) ;
/ / ----
retorno ( 0 ) ;
}
/ / + ----------------------------------------------- ------------------- +djiwenk
Você sabe que o canal shi muda o tempo todo (como o preço atual muda o canal shi também vai mudar)?
e criando um livro
crie sua própria ea