Strict Standards: Non-static method JFactory::getUser() should not be called statically in /homepages/34/d227044908/htdocs/traderninja/foro/joomphpbb_engine2.php on line 688

Strict Standards: Non-static method JLoader::import() should not be called statically in /homepages/34/d227044908/htdocs/traderninja/libraries/loader.php on line 186

Strict Standards: Non-static method JFactory::getSession() should not be called statically in /homepages/34/d227044908/htdocs/traderninja/libraries/joomla/factory.php on line 163
traderninja.com • Ver Tema - AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Últimos Mensajes

» encriptar estrategia
Magnolia 17-05 11:17

» APLICACIÓN PARA IPAD
meg 15-05 19:36

» Alarma Cruce Medias
gonzalogj 14-05 18:52

» A alguien le interesa mi licencia N...
valencianito12 10-05 16:16

» Alucinante lo de Mirus Futures
Consultor 10-05 13:43

» duda de sistemas en tiempo real
cavendish 09-05 21:05

» Duda cancelar suscripción NinjaTra...
danirles 09-05 09:28

» 2 CONEXIONES
TraderNinja 09-05 02:33

» Skew de Volatilidad en el VIX, una ...
Consultor 07-05 13:50

» Ayuda parte financiera Broker.
Sett 04-05 20:40

» Separador linea vertical sesiones d...
jaialro 03-05 11:59

» Salida al cierre de la vela
cls 29-04 09:50

banner1_TGCG
cuenta_demo  mas_info

AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Creación y funcionamiento de indicadores

AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor elgrajillo » Mié, 18 Abr 2012, 20:01

Buenas tardes compañeros, hace un tiempo que me decidi a meterle mano la programación pero soy un poco negado para ello, el caso es que empece por lo que yo creo que es más simple, crear indicadores,(o eso creia yo). El caso es que despues de ver por dentro todos y cada uno de los indicadores que tiene ninjatrader y ver algún manual que hay por la red me propuse ponerme manos a la obra y crear un indicador muy sencillo. que os paso a explicar ahora.

objetivo: que en cada vela que se vaya formando se dibuje por encima y por debajo de la misma una raya horizontal a +- ticks de la apertura. He cogido la idea de bollinger y de los pivot point sería algo parecido. Ejemplo: la primera vela de la mañana en Dax abre en 7000 ptos, pues marcaria una linea por la parte de arriba a + (x) Ticks ( 7020 ptos) y otra por la parte de abajo a - (y) Ticks (6980 ptos) como la que sale en los pivot point pero siempre cambiando por cada vela como pasa con la bollinger.

Espero haberme expicado con claridad. Dejo lo que tengo echo abajo aunque al compilarlo me salen unos fallos qe no se como solucionar.

Por favor alguien que me pueda decir que hago mal, o si mi idea es tan tonta de programar que no se puede hacer.

CODIGO

[Description("lo mas simple que se me ha ocurrido para aprender como funcionan")]
public class MiPrimerIndicador : Indicator
{
#region Variables
// Wizard generated variables
private int myInput0 = 1; // Default setting for MyInput0
// User defined variables (add any user defined variables below)
#endregion

/// <summary>
/// This method is used to configure the indicator and is called once before any bar data is loaded.
/// </summary>
protected override void Initialize()
{
Add(new Plot(Color.Blue, "R1"));
Add(new Plot(Color.Red, "S1"));
Add(new Plot(Color.Blue, "R2"));
Add(new Plot(Color.Red, "S2"));

Overlay = false;
}

/// <summary>
/// Called on each bar update event (incoming tick)
/// </summary>
protected override void OnBarUpdate()
{
if (CurrentBar == 0)
{
return;
}

if (drawLabel == true) // show all history labels
{
LabelR1 = "R1"+CurrentBar + 15 * TickSize;
LabelS1 = "S1"+CurrentBar - 15 * TickSize;
LabelR2 = "R2"+CurrentBar + 30 * TickSize;
LabelS2 = "S2"+CurrentBar - 30 * TickSize;
}

#region Properties
[Browsable(false)] // this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries Plot0
{
get { return Values[0]; }
}

[Description("")]
[GridCategory("Parameters")]
public int MyInput0
{
get { return myInput0; }
set { myInput0 = Math.Max(1, value); }
}
#endregion
}

Y los fallos no se como colocarlos me dice cosas como: "Se esperaba }" en linea 61 columna 22, pero el caso es que yo no he llegado a esa linea de codigo.

No lo entiendo alguien me puede dar las pautas para continuar aprendiendo.

Muchas gracias Traders.
elgrajillo
 
Mensajes: 14
Registrado: Mar, 29 Mar 2011, 12:32

{ SO_SELECT }

Share on Facebook Facebook Share on Twitter Twitter Share on Delicious Delicious

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor TraderNinja » Jue, 19 Abr 2012, 10:34

Lo mejor es no partir de cero... abre el wizard y declara tus líneas, luego puedes editar el código para darles valor... te ahorrarás mucho código.

Saludos!
Avatar de Usuario
TraderNinja
Administrador del Sitio
 
Mensajes: 1557
Registrado: Mar, 28 Dic 2010, 12:46

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor elgrajillo » Jue, 19 Abr 2012, 14:37

Tenias razon he echo lo que me has dicho y me sale muy poco codigo, pero sigo teniendo problemas a la hora de compilar el indicador, me da muchos fallos y no puedo probarlo en una grafica. Cual puede ser el problema? Gracias de antemano

nuevo codigo:
protected override void Initialize()
{
Add(new Plot(Color.FromKnownColor(KnownColor.Green), PlotStyle.Line, "Rr1"));
Add(new Plot(Color.FromKnownColor(KnownColor.Red), PlotStyle.Line, "Ss1"));
Add(new Plot(Color.FromKnownColor(KnownColor.Green), PlotStyle.Line, "Rr2"));
Add(new Plot(Color.FromKnownColor(KnownColor.Red), PlotStyle.Line, "Ss2"));
Overlay = false;
}

/// <summary>
/// Called on each bar update event (incoming tick)
/// </summary>
protected override void OnBarUpdate()
{
// Use this method for calculating your indicator values. Assign a value to each
// plot below by replacing 'Close[0]' with your own formula.
int currentOpen = currentOpen(Period)[0];
Rr1.Set(currentOpen + 11 * TickSize);
Ss1.Set(currentOpen - 11 * TickSize);
Rr2.Set(currentOpen + 14 * TickSize);
Ss2.Set(currentOpen - 14 * TickSize);
}
elgrajillo
 
Mensajes: 14
Registrado: Mar, 29 Mar 2011, 12:32

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor TraderNinja » Jue, 19 Abr 2012, 15:44

Prueba a cambiar las líneas finales:

double apertura=CurrentDayOHL().CurrentOpen[0];
Rr1.Set(apertura + (11 * TickSize));
Ss1.Set(apertura - (11 * TickSize));
Rr2.Set(apertura + (14 * TickSize));
Ss2.Set(apertura - (14 * TickSize));

Saludos!

P.D.: Si no funciona, dinos exactamente qué error te pone.
Avatar de Usuario
TraderNinja
Administrador del Sitio
 
Mensajes: 1557
Registrado: Mar, 28 Dic 2010, 12:46

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor elgrajillo » Jue, 19 Abr 2012, 16:12

Acabo de hacer lo que me has dicho y me sale el error siguiente:

SE ESPERABA } ERROR CS1513 LINEA 62 COLUMNA 10.

y el caso es que mi codigo solo llega hasta la linea 56.
elgrajillo
 
Mensajes: 14
Registrado: Mar, 29 Mar 2011, 12:32

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor TraderNinja » Jue, 19 Abr 2012, 16:54

Eso seguramente es porque te falta una llave de cierre (}) al final del código. Revisa que todas las llaves tengan su cierre correspondiente.

Saludos!
Avatar de Usuario
TraderNinja
Administrador del Sitio
 
Mensajes: 1557
Registrado: Mar, 28 Dic 2010, 12:46

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor elgrajillo » Jue, 19 Abr 2012, 21:55

He ido modificando una por una y nada no se quiere compilar este indicador (parece que me tiene mania).

El caso es que he abierto algunos indicadores que trae el ninja y algunas estrategias y en todas ellas si le doy a compilar me da el mismo error, siendo indicadores del mismo programa eso si que no lo entiendo, como es eso posible? tendre el software mal? existe alguna explicacion? que puedo hacer?

Perdoname de antemano por tanto trajin que te estoy dando, pero es que llevo tanto con él intentandolo que ya lo tengo que sacar por cabezonería y no se deja el muy.....

muchas gracias por la paciencia y la ayuda
elgrajillo
 
Mensajes: 14
Registrado: Mar, 29 Mar 2011, 12:32

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor CJS » Jue, 19 Abr 2012, 22:22

Hola,

Eso ocurre porque cuando compilas un indicador NT los compila todos.

Mira de eliminar el primer indicador que te daba error. A veces, en la línea de error te dice que indicador es el que arrastra el error. Si no, tendrás que localizar el error por tu cuenta. Una forma de hacerlo es con las dos barras “//”, vas convirtiendo algunas líneas en comentarios, y cuando compile es que ya lo has localizado.

Saludos,
CJS
 
Mensajes: 96
Registrado: Mié, 23 Mar 2011, 10:58

Re: AYUDENME CON MI NUEVO Y SIMPLE INDICADOR

Notapor elgrajillo » Jue, 19 Abr 2012, 22:54

Ya lo tengo, era justo eso, me estaba dando los errores del primer indicador que abri.
Muchisimas gracias a ambos ahora a probar que sale, a ver si se parece al pivot point, jeje.

Un saludo para ambos y todos los que que formais este foro.
elgrajillo
 
Mensajes: 14
Registrado: Mar, 29 Mar 2011, 12:32


Volver a Indicadores

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

Bridge by mehdiplugins.com

Strict Standards: Non-static method JFactory::getDBO() should not be called statically, assuming $this from incompatible context in /homepages/34/d227044908/htdocs/traderninja/libraries/joomla/session/storage/database.php on line 84

Strict Standards: Non-static method JTable::getInstance() should not be called statically, assuming $this from incompatible context in /homepages/34/d227044908/htdocs/traderninja/libraries/joomla/session/storage/database.php on line 89

Strict Standards: Non-static method JFactory::getDBO() should not be called statically, assuming $this from incompatible context in /homepages/34/d227044908/htdocs/traderninja/libraries/joomla/database/table.php on line 112