Galleria di interfacce utente scritte in MQL - pagina 11

 
Janis Ozols #:

Le mie interfacce erano, ovviamente, molto più semplici. Non ho usato Canvas, ma ho semplicemente costruito un pannello con controlli standard. Per evitare che gli altri oggetti del grafico si illuminassero, ridisegnavo tutti i componenti della finestra una volta al minuto:

Qui Controlli è un array contenente i nomi dei componenti.

Se si parla di trasparenza visiva, non si tratta di questo, ma di click-through. Anche le impostazioni degli indicatori vengono talvolta cliccate in questo modo.

 

Ho promesso di rivelare la tecnologia del linguaggio di markup KIB dell'autore.

Una piccola introduzione...

Tra i lettori di questo thread ci saranno probabilmente persone che conoscono a fondo la tecnologia dei linguaggi di markup, ma dirò subito che io non sono una persona di questo tipo. Cioè, non ho mai letto o cercato informazioni su questo argomento. Lo stesso vale per l'editor visuale. Non mi vanterò dell'ignoranza, ma solo di una constatazione. Tuttavia, come sono arrivato a loro?

Intuizione? Casualità?

In modo strano, prima ho creato un linguaggio di markup e poi ho capito che si trattava di questo. L'ho capito qualche anno dopo, quando avevo già sviluppato soluzioni specifiche per il linguaggio e l'interprete.

Sì, le soluzioni erano scritte in modo non standard, per cui sono stato criticato in tutti i modi possibili, ma... funzionavano bene. No, non senza bug... Tutti abbiamo dei bug. Ma le mie soluzioni avevano sempre spazio per lo sviluppo e la scalabilità, e l'approccio non è arrivato a un punto morto, come ci si potrebbe aspettare... e come mi era stato profetizzato.... e come mi era stato profetizzato.

Non dico che fossero le soluzioni migliori, no..... ma erano ottimali per un singolo sviluppatore senza formazione in programmazione, fissato con l'obiettivo e la libertà assoluta dagli stereotipi. E ha anche la faccia tosta di opporsi a chiunque.

Arrogante? Si.

Si è reso conto di aver sbagliato e che tutto avrebbe dovuto essere fatto in modo diverso? - No. Perché tutto funzionava e si evolveva.

Pensa di aver avuto ragione? Non proprio.

Dal punto di vista commerciale e professionale, aveva torto.

Dal punto di vista creativo, aveva ragione.


Per aver sbagliato dal punto di vista commerciale e professionale, ha sofferto perché non è diventato un vero programmatore. E perché non ho guadagnato nulla dalle vendite.

Per aver avuto ragione dal punto di vista creativo, ho avuto un'esperienza unica nello sviluppo e nella sperimentazione del mio approccio.

E cosa costa di più?

Dipende da quale fase della vita... Ma lasciamo perdere questa domanda. Non ha una risposta univoca.


Ecco un paradosso: dopo aver creato un linguaggio di markup, ho imparato come funziona...


È stato così:

Prima ho imparato a conoscere MT4 e il linguaggio MQL.

Poi ho imparato a conoscere gli oggetti grafici di questo linguaggio.

Poi ho iniziato a crearli...

...e la prima cosa che ho fatto è stata costruire uno studio visivo...

...la prima cosa che ho fatto.

Quasi appena ho imparato a scrivere le mie prime righe di codice.

Ecco la prova: 2014.



E la grafica ha completamente sostituito dal mio cervello l'algotrading, che stavo per fare. Perché sia successo, non lo so.

Ma non si tratta di grafica. C'era un'altra idea dietro...

Per saperne di più...

 

Visto che è saltato fuori un argomento così interessante, permettetemi un off-topic.

Molto tempo fa ho iniziato a usare EasyAndFastGUI, poi ha smesso di funzionare. Poi ha smesso di essere supportata, ha smesso di compilare e di funzionare, è diventata obsoleta....

Ora è tornata la necessità di una GUI per me stesso (non vendo software). In questo periodo ci sono state alcune serie di articoli con GUI, ma molto voluminosi e integrati con motori di trading, per cui è difficile separare le api dal miele. Oppure descrivere le basi, per uno sviluppo indipendente.

Ho bisogno della vostra opinione: esiste una GUI aperta e gratuita che sia funzionale come EasyAndFastGUI - pulsanti, modifiche, schede, grafici. Basata su canvas.

Per me, come programmatore, le GUI non sono un fine in sé, non diventerò mai il loro sviluppatore. Anche se l'ho fatto in gioventù in Windows 1.0

 
Edgar Akhmadeev #:

Visto che è emerso un argomento così interessante, permettetemi di fare un off-topic.

Molto tempo fa ho iniziato a usare EasyAndFastGUI, poi ha smesso di funzionare. Poi ha smesso di essere supportato, ha smesso di compilare e di funzionare, è diventato obsoleto....

Ora è tornata la necessità di una GUI per me stesso (non vendo software). In questo periodo ci sono state alcune serie di articoli con GUI, ma molto voluminosi e integrati con motori di trading, per cui è difficile separare le api dal miele. O descrivere le basi, per l'autosviluppo.

Ho bisogno della vostra opinione: esiste una GUI aperta e gratuita che sia funzionale come EasyAndFastGUI - pulsanti, modifiche, schede, grafici. Basata su canvas.

Per me, come programmatore, le GUI non sono un fine in sé, non diventerò mai il loro sviluppatore. Anche se l'ho fatto in gioventù in Windows 1.0

Sì, è esattamente quello che ho. Ma ho bisogno di tempo per rinfrescarmi la memoria e ricordare come ho creato le GUI per le persone che mi hanno contattato.

C'è un thread al riguardo https://www.mql5.com/ru/forum/332043

Краудсорсовый GUI. Открытое бета-тестирование. - Опубликую открытый код конструктора GUI для MQL-программ. Установить советник KIB Ex5 на свободный график.
Краудсорсовый GUI. Открытое бета-тестирование. - Опубликую открытый код конструктора GUI для MQL-программ. Установить советник KIB Ex5 на свободный график.
  • 2020.02.04
  • Реter Konow
  • www.mql5.com
----------------------------------------------------------------------------------------------------------------- СБОРКА - движок GUI в пользовательском приложении. Шаг 5 - проектирование пользовательского GUI В дополнительной ветке. Шаг 6 - сохранение пользовательского GUI Вызвать дабл-кликом на график контекстное меню конструктора
 
Реter Konow #:

Sì, è quello che ho. Ma ho bisogno di tempo per rinfrescare la memoria e ricordare come ho creato l'involucro grafico dei programmi delle persone che mi hanno contattato.

Sarebbe bello se poteste essere motivati a pubblicare una libreria funzionante.

 
Edgar Akhmadeev #:

Ho bisogno della vostra opinione: esiste una GUI open source gratuita che sia funzionale come EasyAndFastGUI - pulsanti, modifiche, schede, grafici. Basata su canvas.

A tutti. A tutti coloro che hanno testato le GUI pubblicate da diversi autori. E anche agli autori.

 

E così, dietro la grafica c'era un'altra idea.....

Che cos'era?

Ho dedotto una formula per una delle idee parassitarie del subconscio umano:

Trovare un supercompito --> trovare un supercompito --> trovare una superrisoluzione --> stadio 1, stadio 2, stadio 3.... stadio n

Poi c'è un bivio logico:

1. Esiste una soluzione --> ricerca di un nuovo supercompito

2. Non c'è soluzione --> facciamo una scelta:

a) cercare un nuovo supercompito e (scrivere la perdita nel subconscio)

b) continuare a cercare una soluzione a quello precedente (alimentando la speranza).

Con qualsiasi scelta, il ciclo si ripete.


Vale la pena notare che il supercompito di un individuo non ha alcuna rilevanza vitale ed esiste solo nella percezione soggettiva. È un frutto dell'immaginazione. Ma la persona "infetta" non è in grado di capirlo. Per la sua subcoscienza il supercompito è reale e la sua soluzione è assolutamente necessaria. Getta energie e denaro nella sua ricerca, con il risultato di sprecare risorse insostituibili: tempo e salute. E anche denaro.

È abbastanza facile infettare una persona con un'idea parassitaria se ha una predisposizione fin dall'inizio.

Da dove viene questa predisposizione?

Dall'immaturità sociale. Dal fatto che il "bambino interiore" è più forte dell'"adulto interiore". E poi il bambino prende il sopravvento nel confronto interno.

Perché l'"adulto interiore" è più debole del "bambino interiore"? - Perché l'adulto interiore è socialmente non formato nel processo di crescita individuale.

Di chi è la colpa? - Della società. L'ho detto prima... La società alleva molti adulti"inadatti" per farne delle "formiche operaie".

Negli adulti "inadatti" il bambino interiore (che "sente" l'incompetenza dell'"adulto interiore") è costantemente acceso e sabota gli sforzi dell'adulto interiore nella competizione sociale per il bene delle proprie ambizioni e piaceri infantili. Per questo motivo, queste persone sono costrette ad accettare le condizioni più sfavorevoli nella "contrattazione con la società" e... lavorare dove altri non lo farebbero.

Ma questa è solo la mia teoria e non la impongo.



Devo ammettere che a quel punto il mio subconscio è stato infettato dall'idea-parassita. Sì, sì, la stessa mitica subcoscienza alla ricerca del "Graal" e dell'"Utopia" si è attivata quando ho toccato la "magia" della programmazione.

E quale idea mi è venuta in mente? - L'idea delcubo. Un cubo di proprietà degli oggetti. Decisi di provare a scrivere le proprietà di tutti gli oggetti in un array e di modificarle "al volo" in loop. È così che è nata l'idea del "Kernel-Motor".

Il" Kernel" è il"Cubo" e il"Motore" è l'algoritmo che controlla le proprietà degli oggetti nel"Cubo".

Tutto qui. Da quel momento non ho più potuto rinunciare a questa idea.

Era una"Supersoluzione". Avevo bisogno di un"Supercompito". "Perché non creare un Visual Studio come VS?", ho pensato. E così è andata...

Perché, per quale motivo, perché - non importava. C'era un Supertask e c'era una Supersoluzione.

Il resto non aveva importanza per il bambino interiore: trovava nuove "idee-giocattolo" e non c'era modo di fermarlo.


Continua sotto...

 
Реter Konow #:

Ecco il paradosso: dopo aver creato un linguaggio di markup, ho imparato come funziona....


Era così:

Continuerò da qui.

L'idea di "Kernel-Motor" è nata quasi subito con le prime righe di codice.

Ora mi rendo conto che aveva il potenziale per creare non solo un linguaggio di markup, ma anche un editor visivo. E non richiedeva quasi nessuna formazione aggiuntiva in materia di programmazione. Erano necessarie solo le conoscenze di base. In teoria, potevo implementare un editor visuale con una formazione primitiva in programmazione e avrebbe funzionato bene e in modo efficiente. Alla fine è andata così.

Questo paradosso mi ricorda quello che sta accadendo con l'IA in questo momento. L'IA non esiste - questo è ciò che vi diranno tutti gli scienziati degli istituti di ricerca internazionali. Hanno fatto ricerche sull'intelligenza per anni e difficilmente si convincono che essa consista nel prevedere la parola successiva sulla base di dati collegati a un modello statistico. E se gli si mette sotto il naso un LLM e gli si dice: "Questa non è coscienza?! Non è questo il pensiero?!...", li farete solo arrabbiare e vi manderanno via. Ma questa cosa "senza cervello" sta comunicando con voi come un essere umano.....

Cosa vi dice questo? - Che qualcuno ha trovato unascorciatoia per imitare l'"intelligenza"....

È lo stesso per me nella programmazione. Ho trovato unascorciatoia per l'interfaccia utente.

Non conoscendo l'OOP, ho trovato un modo per creare ed elaborare oggetti aggirando la complessa scienza della programmazione. Allo stesso tempo, la velocità del codice era molto superiore a quella delle UI scritte da professionisti (nello stesso linguaggio) perché gli algoritmi erano estremamente semplici ed efficienti. Sì, non per canone e non per standard..... Proprio come LLM dal punto di vista della Natura è una ridicola copia (non professionale) della coscienza umana... Ma gli esseri umani hanno trovato un modo per aggirare le difficoltà della Natura in materia di imitazione dell'intelligenza...

Anch'io.

Il mio codice ha quasi sempre funzionato molto velocemente rispetto alle soluzioni alternative di questa direzione. Allo stesso tempo, non ho quasi mai cercato di renderlo più veloce. Mi sono limitato a sfruttare il potenziale della "Supersoluzione" che avevo scelto all'inizio.

Lo "spacchettamento" della Supersoluzione ha sempre garantito il progresso. Tutto veniva facilmente e da solo.


Ma come sono arrivato tecnicamente al linguaggio di markup prima di rendermi conto che lo stavo creando...?

Informazioni su questo sito....

 

Ho impostato lo stesso supertask... ehm... non ricordo... circa 3 anni fa, forse. Creare un bot "AI" che elaborasse da solo le strategie di trading.

Ma avevo anche l'obiettivo che facesse soldi :) Allo stesso tempo, avevo già esperienza di trading di successo, ma in altri modi.

Alla fine, il compito si è rivelato davvero arduo, ho visto come i chelicks sono andati fuori strada sul forum, e anche adesso vanno fuori strada quando entrano nell'argomento MO :)

 
Edgar Akhmadeev #:

È un bene se si è motivati a pubblicare una libreria funzionante.

Se lo sarò, lo farò. Ma non posso prometterlo. Farò del mio meglio.