¡¡¡Ideas ambiciosas !!! - página 6

 
TheXpert:

Piensas en categorías de amebas :) .

" Deberíamos olvidarnos de las pequeñas eficiencias, digamos el 97% de las veces: la optimización prematura es la raíz de todos los males. Sin embargo, no debemos dejar pasar nuestras oportunidades en ese 3% crítico".

Es la cuarta vez que me citan en este foro.

No hace falta mucha inteligencia para citar y copiar, hasta un mono puede intentar aprenderlo. :)

Pero explicar su pensamiento conscientemente - es más difícil y ya está reclamando el nivel del homo sapiens.

Entonces, ¿quieres intentar darle sentido o todavía no estás a ese nivel? :)

 
HIDDEN:

Desde hace un par de años me atormenta periódicamente la idea de implementar un probador de estrategias multidivisas.

He visto varias implementaciones, he leído ideas e incluso he mirado en MT5.

Es decir, ¿para qué lo necesito si hay una MT5 donde la multidivisa ya está implementada en el terminal?

Escribir un probador de estrategias multidivisas interno sin errores es una tarea muy compleja que rara vez se completa.

Te recomiendo que vuelvas a probar MetaTrader 5 en versión de 64 bits:

Es mejor utilizar una herramienta que haya sido probada muchas veces y que esté activamente desarrollada y apoyada por los desarrolladores.
 
Andrei01:

La optimización del código requiere un conocimiento mínimo de la intensidad de recursos de un fragmento de código en términos de operaciones elementales realizadas (suma, multiplicación, acceso a la memoria, cálculo de direcciones, etc.). Sin esto, ninguna optimización es posible en principio, e incluso el mejor compilador será impotente contra este pobre programador. Parece una obviedad, pero veo que esto también puede ser una gran noticia para muchos programadores. :)



No puedo permitírmelo, pero me gustaría expresarme con firmeza en su dirección, pero bueno, asumamos que su ejemplo de ineptitud y terquedad aclarará las cosas a mucha gente

Estás colgado de la eficiencia imaginaria de tu simple direccionamiento, los ejemplos que di y los fundamentos de la escritura de código eficiente - eres incapaz de leer y entender, vamos desde el área de 2x2:

hay una tarea, pero una tarea complicada )) - el truco es vital - el cliente como siempre pide un código mínimo, que en el proceso de trabajo adquiere versatilidad - los números de la lista de abajo

1. escribir una función para multiplicar matrices bidimensionales

2. escribir una función para la multiplicación de matrices tridimensionales

3. ¿y puedes escribir una función universal - X * Y?

4. ¿Puedes encontrar una matriz inversa?

- un programador ordinario escribe una función que multiplica la matriz X[2] [2] * Y[2][2].

- con su "lógica" - escriba un código asombrosamente rápido que consistirá en un array X[4] e Y[4] y una función para multiplicar X[4] * Y[4] y asegúrese de utilizar una función para convertir los estúpidos datos de entrada/salida como un array bidimensional en los datos correctos - un array unidimensional, y estudie álgebra matricial y escriba transformaciones equivalentes para matrices unidimensionales

- El primer programador empieza a añadir universalidad a su función; no puedo ni imaginar lo que hará (será muy difícil comprobar la multiplicación de matrices de veinte dimensiones convertidas en array unidimensional con un lápiz); y finalmente aparece un programador con OOP y define la clase base - matriz y elabora el método de multiplicación de matrices;

- No quiero ni imaginar lo que hará con la cuarta tarea, porque ese "cliente astuto con ideas nuevas y brillantes" puede aparecer en el horizonte; el programador con POO sólo añade un método de encontrar la matriz inversa; y, además, añade todas las operaciones matriciales y las distribuye a otros programadores, para que no se molesten después

Si consigues darte cuenta de lo que es un código con programación habitual, con POO, y con tus "ideas brillantes" (tu código aumentará en avalancha de tamaño a partir de la segunda tarea y la eficiencia está fuera de toda duda) te darás cuenta de lo que es la programación eficiente, y, sí, se me olvidaba - los errores de trabajar con matrices también necesitan control - todavía tienes que trabajar un poco ))))))))))))))).

Lo que tratas de argumentar ya ha sido experimentado por programadores de todo el mundo, créeme, ningún Bill Gates puede hacer que programes en POO si no es eficiente, todo depende de las perspectivas del proyecto - si el proyecto se expandirá - sin POO será una pérdida de tiempo y se escribirá un vasto código sin flexibilidad y versatilidad

 
Andrei01:

Bueno hay que confundir y mezclar en una mezcla de cascabeles diferentes cosas. :)

Uno es una fuente de información que es objetiva y el otro es un receptor que es subjetivo porque no siempre es capaz de percibir toda la información, sino sólo una parte.

nada de eso. La información sólo tiene sentido si se aplica a una fuente y un receptor concretos. No puede haber ninguna información "absoluta" para nosotros, porque al haberla tocado o medido, nos convertimos inmediatamente en un receptor subjetivo. De ello se deduce que es fundamentalmente imposible probar o refutar la existencia de información objetiva en cualquier fuente - es como discutir sobre la presencia/ausencia de Dios.

Y la propia noción de información, en general, sólo surge cuando se eligen tanto la fuente como el receptor.

 
alsu:

nada de eso. La información sólo tiene sentido cuando se aplica a una fuente y un receptor concretos. No puede haber una información "absoluta" para nosotros, porque al haberla tocado o medido, nos convertimos inmediatamente en un receptor subjetivo.

Por supuesto, siempre hay una fuente de información. No hay otra forma de ver la información.

La información sin fuente no puede existir. :) Pues bien, si hay una fuente de información objetiva, la información de ésta será objetiva en sí misma. El receptor de la información siempre será subjetivo, pero puede acercarse a la objetividad con una precisión infinita si percibe toda la información sin distorsiones.

 
IgorM:

- Con tu "lógica", simplemente escribes un código increíblemente rápido con el array X[4] e Y[4] y una función para multiplicar X[4] * Y[4] y seguramente una función para convertir un estúpido dato de entrada/salida en un array bidimensional en un dato válido unidimensional y estudiar álgebra matricial y escribir transformaciones equivalentes para matrices unidimensionales.

Desgraciadamente, no has entendido lo más sencillo, que he intentado hacer comprender, pero veo que es inútil porque si un fontanero (por ejemplo) decidiera de repente reciclarse temporalmente como programador, seguiría siendo fontanero y pensaría como un fontanero, cuya principal cosa es la longitud de las tuberías colocadas en el suelo. :)

El criterio de optimización del programa no es la longitud del código, sino el número de operaciones para una tarea concreta. Si se le pide que multiplique sólo una matriz bidimensional, mientras implementa casos mucho más generales e innecesarios, no hace falta decir que nadie le agradecerá tal amateurismo.

 
Andrei01: El receptor de la información siempre será subjetivo, pero puede acercarse a la objetividad con una precisión infinita si percibe toda la información sin distorsiones.

La subjetividad del receptor no consiste en que reciba de forma inexacta lo que viene de la fuente, sino en que ese flujo que le llega puede ser interpretado de diferentes maneras. El mismo flujo de bits puede ser información completamente diferente, ¿lo ves?

Andrei01, lo siento, pero no entiendo por qué escribes algo aquí. ¿Es para robotizar o algo así? Tus mensajes se perciben como una especie de ruido de fondo que no contiene ninguna señal útil para este hilo. Por favor, filtre el flujo de salida: la gente lee, no los robots...

 
Mathemat:

1. La subjetividad del receptor no consiste en que reciba de forma inexacta lo que viene de la fuente, sino en que este flujo que le llega puede ser interpretado de diferentes maneras. El mismo flujo de bits puede ser información completamente diferente, ¿ves?

Andrei01, lo siento, pero no entiendo para qué escribes algo aquí. ¿Es para la clasificación de robots o qué? Sus mensajes se perciben como una especie de ruido de fondo sin ninguna señal útil para este hilo. Por favor, filtre el flujo de salida - la gente lee, no los robots...

1. El hecho de que el receptor interprete la información de forma diferente, dependiendo de sus razones, es sólo una indicación de que es subjetiva.

2. Mathemat, lamentablemente no he entendido el significado de esta frase. Pone demasiado ruido en él. :) Por cierto, es un ejemplo de que la fuente de información también puede inundar, es decir, generar deliberadamente información sin sentido. :)

 
Andrei01:

Desgraciadamente, no has entendido lo más sencillo, que he intentado hacer comprender, pero veo que es inútil, porque si un fontanero (por ejemplo) decidiera reciclarse temporalmente como programador, sigue siendo fontanero y piensa como un fontanero, cuya principal cosa es la longitud de las tuberías colocadas en el suelo. :)

El criterio de optimización del programa no es la longitud del código, sino el número de operaciones para una tarea concreta. Si se le pide que multiplique sólo una matriz bidimensional, y va a implementar casos mucho más generales e innecesarios, no hace falta decir que nadie le agradecerá tal amateurismo.


Desgraciadamente, usted piensa sólo en términos de "resolución de problemas de una vez y directamente", y no piensa en futuros cambios en el algoritmo de funcionamiento del programa

Se trata de tareas muy especializadas que, o bien se resuelven en 20-30 minutos por su facilidad de ejecución, o bien estas tareas ya se han ejecutado en proyectos de mayor envergadura.

C-4 ya ha dicho que los algoritmos de trading basados en el MACD se están convirtiendo en algo del pasado, no lo voy a repetir

SZY: Estudia al menos algunos desarrollos en la optimización del código, si esto es un punto doloroso para ti, aquí están las cosas que la gente ha trabajado: http: //www.realcoding.net/article/rubric/code_optim?page=6

Me despido una vez más en este hilo, no veo la necesidad de repetirme, quien quiera entender lo que es la POO y la programación eficiente, creo que lo entenderá o lo buscará en google...

 
Andrei01: 1. El hecho de que el receptor interprete la información de forma diferente, dependiendo de cualquiera de sus razones, sólo demuestra que es subjetivo.

Se equivoca de nuevo. La interpretación de la corriente entrante es tarea de quien se sitúa por encima del receptor y establece las condiciones del Juego. El receptor es de hierro; tritura la información según el algoritmo que le ha fijado el Game Master. En este sentido es completa y estrictamente objetiva, porque es una plancha muda. Pero lo subjetivo es el Maestro.

¿Sabías que la información puede interpretarse de forma diferente, según el contexto de la tarea que se realice?