Noi scriem un robot de tranzacționare pe c #

Noi scriem un robot de tranzacționare în C #. Partea 1. Bazele limbajului de programare și comunicarea cu terminalul

Recent, din ce în ce mai des, am auzit de la mulți comercianți că este foarte interesant să cunoască limba de programare și să scrie roboții ei înșiși. Mulți oameni încearcă din greu să învețe limbajul la modă din C #. Cu toate acestea, un începător de la zero pentru a scrie orice aplicație merită va fi destul de dificil. În acest articol voi încerca să dau o cunoaștere minimă a limbajului de programare, să arăt logica construirii unei aplicații, să proiectez și să lansez un robot de tranzacționare pentru terminalul QUIK.







obțineți date de la terminalul QUIK. Datele QUIK pot fi obținute în trei moduri:
1) exportul datelor prin ODBC
2) exportul datelor prin DDE
3) luați date direct din memorie
A treia metodă este foarte consumatoare de timp pentru programare, deși este cea mai rapidă pentru a obține date. Producția datelor prin ODBC, ca dezvoltatori de scriere Quik, este mai lentă decât ieșirea prin DDE. Prin urmare, vom folosi cea mai simplă metodă - ieșire prin DDE.
Vom stabili imediat QUIK la datele de ieșire (Figura 7). Pentru a face acest lucru, selectați tabelul dorit și faceți clic pe meniul Export Data - DDE Output. Ca server DDE, trebuie să specificați numele "DDEServer". Ca registru de lucru, trebuie să specificați următoarele:






1) pentru masa lumanarilor istorice - "lumânări"
2) pentru tabelul de cotatii si instrumente - "citate"
3) pentru tabelul de comenzi - "comenzi"
Nu uitați să bifați "Concluzie apăsând pe Ctrl + Shift + L".

Personalizarea ieșirii tabelului DDE


În consecință, fereastra QUIK va arăta astfel:

QUIK

Pentru importul DDE avem nevoie de:
1) Clasa XLTable, care implementează conversia datelor din format Excel în formularul standard (toate fișierele necesare sunt în anexa la articol)
2) Biblioteca NDde.dll pentru crearea unui server DDE

Vom crea o clasă pentru a lucra cu serverul DDE:
clasa MyDDEServer: DdeServer
public MyDDEServer (serviciu de șir): bază (serviciu)
>
>
În această clasă, trebuie furnizat un set minim de funcții:
1) Înregistrarea serverului
2) Logout server
3) Evenimentul declanșează cronometrul pentru a obține date noi
4) Metoda de procesare a prelucrării datelor

În formularul de cerere, am adăugat și obiecte vizuale pentru a afișa datele primite. Ca rezultat al compilării (F5) a cererii și a începutului importului prin DDE, se obțin următoarele (Figura 11):

Importarea datelor QUIK în fereastra aplicației


După cum putem vedea, datele sunt importate cu succes în aplicația noastră de terminale QUIK acum ne confruntăm cu sarcina de a crea logica robotului de tranzacționare și punerea sa în aplicare, așa cum am încerca să scrie în articolul următor.
Structura arhivei:
1) NDde.dll - bibliotecă dinamică, care implementează funcții pentru lucrul cu serverul DDE
2) XLTable.cs - clasă pentru procesarea datelor din QUIK în aplicație
3) charts.qpl - portofoliu pentru QUIK în limba Qplie pentru formarea conturilor istorice
4) INFO.wnd - setările QUIK
5) Robot - codul robotului pe C #







Articole similare

Trimiteți-le prietenilor: