[Logo] Spazio Aperto Sella.it
[Register] Registrati   [Login] Login    
[Search] Ricerca   [Recent Topics] Argomenti Recenti   [Hottest Topics] Argomenti vivaci  
[Banner Pubblicitario]
Benvenuti nella stanza di supporto per "Sella Trading Bridge"  XML
Indice dei Forum » Sella Trading Bridge
Autore Messaggio
fuego


Registrato: 09/04/2011 18:18:29
Messaggi: 89
Offline

CliCli wrote:
fuego wrote:Vorrei far presente che nella lista MTA della "XremotingWintestApplication" manca il titolo UNICREDIT (UCG), mentre c'è UNICREDIT RISPARMIO (UCGR)...
HO SEGNALATO LA COSA TEMPO FA.'...MA ANCORA OGGI NON RISULTA "UCG" NELLA LISTA MTA!
NON COMPARE SIA NELLA SEDUTA DIURNA CHE IN QUELLA SERALE!




non sara' presente nella lista perche' sul server di Sella avra' una posizione oltre la 1000 e quindi non ti comparira'.

per visualizzare solo quelle che ti interessano , puoi crearti una lista e con un ciclo le puoi richiamare dalla InstrumentKey


io faccio cosi':




List<InstrumentKey> tableStocks = new List<InstrumentKey>();

string path_input = "";
path_input = path_input + @"C:\Strumenti.TXT"; // elenco strumenti che voglio utilizzare

StreamReader rdr = File.OpenText(path_input);


while (rdr.Peek() != -1)
{
string line = rdr.ReadLine();

string _stock_code;
string _mkt;
string _stock_code_trim;
string _mkt_trim;

_stock_code = line.Substring(0, 10);
_mkt = line.Substring(10, 10);


_stock_code_trim = _stock_code.Trim(' ' ); // viene compattato il campo togliendo gli spazi
_mkt_trim = _mkt.Trim(' ' ); // viene compattato il campo togliendo gli spazi

tableStocks.Add(new InstrumentKey(_stock_code_trim, _mkt_trim)); // richiamo dei singoli strumenti

}
rdr.Close();


tableSubscriptionPrice = Session.SubscribeInfo(SubscriptionType.Price,
SubscribeUpdateModes.SnapshotAndRefresh,
Session.CreateAutoDispatchQueue(receiveMessagePrice),
tableStocks);




Ciao CliCli

solo ora sto implementando il codice sopra che mi hai suggerito per avere una lista di titoli personali richimando i codici del titoli da un file .txt (Strumenti.txt)

Purtroppo non funziona!!!
inoltre nel file.txt i codici del titolo devono essere posti così?
ENI MTA
SPM MTA
ecc...

This message was edited 3 times. Last update was at 28/07/2012 20:22:09

CliCli


Registrato: 17/11/2011 09:39:35
Messaggi: 53
Offline





il file Strumenti.TXT come lo hai creato?


io nell'esempio che ti ho postato,il campo stock_code e mkt sono lunghi 10 caratteri:


es.


TITOLO....MKT.......
F.........MTA.......
ENI.......MTA.......
G.........MTA.......
FDAX0912..EUREX.....



I puntini sono messi solo in questo esempio per evidenziare gli spazi che devi mettere sul foglio di testo STRUMENTI.TXT


Quella parte di programma l'ho presa dal mio sorgente ed e' in produzione da maggio 2011

quindi funziona




Ciao




fuego


Registrato: 09/04/2011 18:18:29
Messaggi: 89
Offline

CliCli wrote:



il file Strumenti.TXT come lo hai creato?


io nell'esempio che ti ho postato,il campo stock_code e mkt sono lunghi 10 caratteri:


es.


TITOLO....MKT.......
F.........MTA.......
ENI.......MTA.......
G.........MTA.......
FDAX0912..EUREX.....



I puntini sono messi solo in questo esempio per evidenziare gli spazi che devi mettere sul foglio di testo STRUMENTI.TXT


Quella parte di programma l'ho presa dal mio sorgente ed e' in produzione da maggio 2011

quindi funziona




Ciao






Ti ringrazio moltissimo.... sono riuscito a farlo funzionare.
Ti chiedo un'altra cosa!!

La lista che ho immesso in Strumenti.txt mi compare in tutti mercati e non solo in MTA, come posso evitare di far comparire tutta lista dei mercati e far comparire al posto di essa una lista di panieri personali al cui interno ci saranno gli strumenti finanziari personali richiamati dai quelli memorizzati in appositi file .txt?
CliCli


Registrato: 17/11/2011 09:39:35
Messaggi: 53
Offline




se tu stai modificando il programma di esempio di Sella, la parte di programma che ho postato io,





List<InstrumentKey> tableStocks = new List<InstrumentKey>();

string path_input = "";
path_input = path_input + @"C:\Strumenti.TXT"; // elenco strumenti che voglio utilizzare

StreamReader rdr = File.OpenText(path_input);

while (rdr.Peek() != -1)
{
string line = rdr.ReadLine();

string _stock_code;
string _mkt;
string _stock_code_trim;
string _mkt_trim;

_stock_code = line.Substring(0, 10);
_mkt = line.Substring(10, 10);

_stock_code_trim = _stock_code.Trim(' ' ); // viene compattato il campo togliendo gli spazi
_mkt_trim = _mkt.Trim(' ' ); // viene compattato il campo togliendo gli spazi

tableStocks.Add(new InstrumentKey(_stock_code_trim, _mkt_trim)); // richiamo dei singoli strumenti

}
rdr.Close();

tableSubscriptionPrice = Session.SubscribeInfo(SubscriptionType.Price,
SubscribeUpdateModes.SnapshotAndRefresh,
Session.CreateAutoDispatchQueue(receiveMessagePrice),
tableStocks);






va in sostituzione della parte di sorgente nel frmStockList


int count = 0;
List<InstrumentKey> fullTableStocks = Session.GetInstruments(marketCode);
List<InstrumentKey> tableStocks = new List<InstrumentKey>();
foreach (InstrumentKey stock in fullTableStocks)
{
tableStocks.Add(stock);
count++;
if (count >= 1000)
break;
}

tableSubscription = Session.SubscribeInfo(SubscriptionType.Price,
SubscribeUpdateModes.SnapshotAndRefresh,
Session.CreateAutoDispatchQueue(receiveMessage),
tableStocks);



che nell'esempio di Sella estrae tutti i primi 1000 elementi presenti in quel mercato che hai scelto.


Il mio programma alla partenza carica solo quegli stumenti che ho all'interno della mia lista ma non salto da una lista all'altra perche' non mi serve nella mia procedura.


Ricorda che il programma di Sella e' solo un esempio di cosa potrebbe fare la Sella_Bridge , ma non e' la Bibbia.

Da quel programma puoi prendere degli spunti per poi con la tua CAPACITA' ed INVENTIVA crearti il programma a tuo piacimento


Io devo ringraziare Sella che ha creato e distribuito un sorgente da cui prendere spunto , altrimenti non sarei mai riuscito a fare la mia procedura.

Sono anch'io autodidatta in C_sharp da 1 anno , ma tra ricerche in rete e prove sul sorgente ( se sai programmare) riesci a fare quello che ti serve.




Buone ferie


Marco
fuego


Registrato: 09/04/2011 18:18:29
Messaggi: 89
Offline

CliCli wrote:


se tu stai modificando il programma di esempio di Sella, la parte di programma che ho postato io,





List&lt;InstrumentKey&gt; tableStocks = new List&lt;InstrumentKey&gt;();

string path_input = "";
path_input = path_input + @"C:\Strumenti.TXT"; // elenco strumenti che voglio utilizzare

StreamReader rdr = File.OpenText(path_input);

while (rdr.Peek() != -1)
{
string line = rdr.ReadLine();

string _stock_code;
string _mkt;
string _stock_code_trim;
string _mkt_trim;

_stock_code = line.Substring(0, 10);
_mkt = line.Substring(10, 10);

_stock_code_trim = _stock_code.Trim(&#039; &#039; ); // viene compattato il campo togliendo gli spazi
_mkt_trim = _mkt.Trim(&#039; &#039; ); // viene compattato il campo togliendo gli spazi

tableStocks.Add(new InstrumentKey(_stock_code_trim, _mkt_trim)); // richiamo dei singoli strumenti

}
rdr.Close();

tableSubscriptionPrice = Session.SubscribeInfo(SubscriptionType.Price,
SubscribeUpdateModes.SnapshotAndRefresh,
Session.CreateAutoDispatchQueue(receiveMessagePrice),
tableStocks);






va in sostituzione della parte di sorgente nel frmStockList


int count = 0;
List&lt;InstrumentKey&gt; fullTableStocks = Session.GetInstruments(marketCode);
List&lt;InstrumentKey&gt; tableStocks = new List&lt;InstrumentKey&gt;();
foreach (InstrumentKey stock in fullTableStocks)
{
tableStocks.Add(stock);
count++;
if (count &gt;= 1000)
break;
}

tableSubscription = Session.SubscribeInfo(SubscriptionType.Price,
SubscribeUpdateModes.SnapshotAndRefresh,
Session.CreateAutoDispatchQueue(receiveMessage),
tableStocks);



che nell&#039;esempio di Sella estrae tutti i primi 1000 elementi presenti in quel mercato che hai scelto.


Il mio programma alla partenza carica solo quegli stumenti che ho all&#039;interno della mia lista ma non salto da una lista all&#039;altra perche&#039; non mi serve nella mia procedura.


Ricorda che il programma di Sella e&#039; solo un esempio di cosa potrebbe fare la Sella_Bridge , ma non e&#039; la Bibbia.

Da quel programma puoi prendere degli spunti per poi con la tua CAPACITA&#039; ed INVENTIVA crearti il programma a tuo piacimento


Io devo ringraziare Sella che ha creato e distribuito un sorgente da cui prendere spunto , altrimenti non sarei mai riuscito a fare la mia procedura.

Sono anch&#039;io autodidatta in C_sharp da 1 anno , ma tra ricerche in rete e prove sul sorgente ( se sai programmare) riesci a fare quello che ti serve.




Buone ferie


Marco


Scusa il ritardo, ma se sei ancora in ferie ti auguro buona continuazione.
Anche io a settembre dell&#039;anno scorso ero praticamente bianco di c#, ma avevo comunque esperienza di programmazione in excel e anche la passione per la programmazione; sono arrivato a far fare al codice sorgente cose, che a settembre minimamente pensavo di riuscire a fare e molte altre ne riuscirò fare, fino a creare una piattaforama di negoziazione finanziaria altamente personalizzata, per cui sono anche io contento di questa iniziativa in open source di sella.
Avevo già capito che bisognava sostituire quella parte di codice e così avevo proceduto, ma mi compaiono tutti i mercati e denttro ogni mercato compare la lista del file txt; per dire la verità non mi sono impeganto a pieno per risolvere il problema; comunque secondo me bisogna intervenire opportunamente sia sul sul file MDMain.cs che sul file frmStocklist.cs ...tu che dici?


This message was edited 2 times. Last update was at 20/08/2012 12:29:55

fuego


Registrato: 09/04/2011 18:18:29
Messaggi: 89
Offline

Qualcuno ha modificato il file BuySell.cs per rendere automatico il trading sfruttando segnali operativi emessi direttamente dal codice c# di STB opportunamente integrato per emettere tali segnali operativi?
Premetto che ho già modificato il file BuySell.cs per prendersi in auotmatico quantità e prezzo di un determinato strumento finanziario.
crinops


Registrato: 07/09/2010 07:48:58
Messaggi: 61
Offline

Ho implementato un trading system prendendo spunto da http://book.mql4.com/samples/expert
Emette segnali operativi, e genera ordini
Dal link sopra si può comprendere e trarre spunto per creare un trading system da zero.
fuego


Registrato: 09/04/2011 18:18:29
Messaggi: 89
Offline

Faccio seguito al mio ultimo post e cerco qui di essere più preciso.
Nell’ambito di una completa automazione di un&#039;ordine, ho già modificato con successo il form frmBuySell affinché tale codice carichi automaticamente quantità e price di un ordine in base a segnali operativi emessi da un algoritmo decisionale (trading System) implementato in altro form; il carico automatico delle quantià e del price avviene tramite un timerTick che sostituisce i pulsanti compra e vendi; ho però un problema! ovvero il codice non è in grado di sceglere atomaticamente la fase di negoziazione in cui inserire un&#039;ordine e cioè: invece di scegliere dal commboBox cmbPhases la fase di negoziazione in cui inserire l’ordine (PhaseType), vorrei che venga scelta automaticamente una fase impostata di defoalt nel codice del form; per esempio voglio che Order.Phase scelga automaticamente la fase di &quot;Asta di Chiusura” e cioè quantità e price devono essere eseguite nell’asta di chiusura.
In questo modo i segnali operativi si tramuteranno in ordine a mercato in modo completamente automatico (Trading System Automatico) se il computer è acceso e l&#039;applicativo del trading System è aperto.
Come posso modificare il codice del form frmBuySell?

This message was edited 5 times. Last update was at 09/09/2012 12:28:58

crinops


Registrato: 07/09/2010 07:48:58
Messaggi: 61
Offline

Vuoi impostare come valore predefinito della combo cmbPhases nel form frmBuySell il valore "Chiusura"?
scrivi nel costruttore di frmBuySell, dopo il caricamento della combo cmbPhases:
cmbPhases.SelectedValue = PhaseType.Chiusura.GetHashCode().ToString(); //qui ho impostato Chiusura come valore selezionato della combo

ale


Registrato: 23/09/2012 12:09:37
Messaggi: 1
Offline

Ciao a tutti,
vorrei sapere come si puo' inserire un ordine di vendita per andare "short", ammesso ovviamente che l'account sia abilitato, visto che inserire un normale ordine di vendita se non si è "long" genera errore.
Dal progetto di esempio non ho trovato un flag utile allo scopo, ho pero' visto che la classe Order ha un campo Parameter che accetta diversi valori di tipo OrderParameters, è forse uno di questi? (gli ultimi due non hanno commento e non si capisce a cosa servono)
O si deve fare in qualche altro modo?

Scusate ma anche guardando nella documentazione in PDF non sono riuscito a trovare come fare.

Grazie in anticipo
01067844


Registrato: 12/11/2012 13:08:53
Messaggi: 5
Offline


Buongiorno,

scrivo per sapere se è possibile effettuare il login senza utilizzare il token.

Ho già visto gli esempi di login, ma in tutti c'è il secondo livello di autenticazione che necessita il token.

La mia richiesta nasce dal fatto c'è la necessità di fare un login automatico senza che ci sia un input manuale (inserimento del token che cambia ogni minuto).

Grazie

Fabio
giulio.rattone


Registrato: 22/07/2009 13:07:45
Messaggi: 183
Offline

01067844 wrote:
Buongiorno,

scrivo per sapere se è possibile effettuare il login senza utilizzare il token.

Ho già visto gli esempi di login, ma in tutti c&#039;è il secondo livello di autenticazione che necessita il token.

La mia richiesta nasce dal fatto c&#039;è la necessità di fare un login automatico senza che ci sia un input manuale (inserimento del token che cambia ogni minuto).

Grazie

Fabio


Inserire l'ordine di segno SELL è più che sufficiente ammessi i seguenti pre-requisit:

1) Essere abilitati alla vendita short-selling.
2) Settare il proprio profilo short a "Sacalper" anzichè "Multitrend".

Per antrambe queste cose la rimando al manuale della piataforma sellaxtrading specificandole che questa seconda cosa la può fare online purchè nel corso della stessa giornata non abbia già posizioni short aperte.

La modalità multitrend serve qualora lei voglia tenere aperta sullo stesso strumento sia posizioni short che long.

In quel caso il sgebo dell'ordine andrebbe specificato come "short".... Ma è una modalità di scaso interesse nell'ottica del SellaTradingBridge.


Giulio Rattone
Resp IT Titoli e Trading
giulio.rattone


Registrato: 22/07/2009 13:07:45
Messaggi: 183
Offline

01067844 wrote:
Buongiorno,

scrivo per sapere se è possibile effettuare il login senza utilizzare il token.

Ho già visto gli esempi di login, ma in tutti c&#039;è il secondo livello di autenticazione che necessita il token.

La mia richiesta nasce dal fatto c&#039;è la necessità di fare un login automatico senza che ci sia un input manuale (inserimento del token che cambia ogni minuto).

Grazie

Fabio


Ciao Fabio.

Purtroppo devo risponderti... no non è possibile.
L'obbligatorietà del token è stata introdotta sul STB proprio per evitare un totale automatismo anche della login.

So che se sviluppi sistemi interconnessi dt TS può essere seccante... ma l'idea (che scaturisce da esigenza di sicurezza) è che almeno l'attività di login sia manuale o semi-automatica.

Considera che le credenziali del bridge solo le stesse per l'accesso al tuo conto on-line e di conseguenza questo espone a necessarie attenzioni dal punto di vista della sicurezza.

Giulio

Giulio Rattone
Resp IT Titoli e Trading
01067844


Registrato: 12/11/2012 13:08:53
Messaggi: 5
Offline

Grazie per la risposta,

ho letto sul Forum che c'è la possibilità di sostituire il token con una password (anche se provvisoria).

Abbiamo dei server abbastanza sicuri e per aumentare il nostro livello di sicurezza ci proponiamo di cambiare la password (in sostituzione del token) periodicamente.

La soluzione di utilizzare il codice token è quella più sicura, ma abbiamo la necessità di fare il login in maniera automatica senza nessun input manuale e ci assumiamo il rischio di non utilizzare il token.

Come facciamo ad attivare la password in sostituzione del token?

Grazie
Fabio
Christopher


Registrato: 14/11/2012 13:19:42
Messaggi: 2
Offline

Buongiorno a tutti,

Metto le mani avanti dicendo che sono nuovo del forum e spero di aver postato nel thread giusto...

Io sto usando la sella trading bridge per scrivere un programma in C++.NET e sto avendo un po' di difficoltà con la traduzione dei vostri esempi che invece sono in C#.

Quindi vi chiedo se è possibile avere degli esempi o del supporto per il C++?
E anche se è possibile avere delle API che non siano in .NET ma in C o C++ nativo?

Poi in particolare ho un problema con la "Session::SubscribeInfo", quando inserite i parametri per la gestione della coda usate la
"Session::CreateAutoDispatchQueue(receiveMessage)", dove il receiveMessage è il nome di una funzione che è stata creata sempre nel progetto.

Ora in C++ io creo la funzione "receiveMessage" ma quando uso il comando "Session::CreateAutoDispatchQueue(receiveMessage)" mi da come errore il fatto che cerco di richiamare la funzione senza passargli gli argomenti richiesti... come faccio a risolvere?
In C++ non credo che sia possibile richiamare una funzione senza passargli gli argomenti che richiede, cosa che invece sembra si possa fare in C#...

Qualcuno mi può aiutare?? Non so più dove sbattere la testa

Vi allego anche l'immagine del pezzo di codice in C# a cui mi riferisco.

Spero di essermi spiegato abbastanza bene

Grazie a tutti

Christopher
[Thumb - immagine codice C#.jpeg]

 
Indice dei Forum » Sella Trading Bridge
Vai a:   
E.t.v.s.p.b WLS11G