Risposta

Documentazione API Java?

4 risposte

Albert Rimm

Abbonato, bbp_partecipante, 0 risposte.

Visita il profilo

5 anni fa #238874

 

Innanzitutto, congratulazioni per il tuo lavoro. Attualmente sono più un ricercatore orientato a Java/Python, ma ho appena scoperto SQX perché un mio cliente ha bisogno che sviluppi il suo progetto utilizzando SQX e penso che sia piuttosto interessante.

Tuttavia, sto trovando un'inutile complessità, proprio perché non trovo alcuna documentazione sulle API, quindi anche controllando blocchi predefiniti simili a quelli che devo implementare, non posso ancora essere sicuro dell'uso di ogni metodo, annotazione, classe...

Solo per fare un paio di esempi, per quanto riguarda le annotazioni o le variabili di metodi semplici come "Calls" di IndicatorBlock, posso capire più o meno la sua funzione, ma mi manca davvero la documentazione API per essere sicuro dello scopo di questi metodi, funzioni, variabili...

Quindi, per sapere quanto sarà complesso/facile implementare il progetto di questo cliente, e oltre a questo, per pensare di sviluppare nel prossimo futuro altri progetti in SQX invece che su altre piattaforme, vorrei sapere se esiste una documentazione per questo specifico modulo di SQX (l'API/codifica Java) e non sono stato in grado di trovarla o non viene fornita alcuna documentazione. Ho letto in altri post che la documentazione sull'API sarebbe stata disponibile con l'ultima versione di SQX, se è così, dove posso trovarla?

Grazie in anticipo!

0

Mark Fric

Amministratore, sq-ultimate, 2 risposte.

Visita il profilo

5 anni fa #238895

Ciao Albert,

Purtroppo siamo ancora indietro con la programmazione e la documentazione API. Esiste una breve guida in PDF Extending SQX, che viene distribuita insieme a SQ X, e che contiene istruzioni ed esempi per le cose più frequenti, come l'aggiunta di nuovi indicatori e metriche.

 

Finché non lo faremo, forse se mi contatterai direttamente potremo discutere di quale sia esattamente il tuo obiettivo e se e come sia possibile realizzarlo con SQ, e quanto sarebbe complicato. Ti invio un PM con la mia email.

 

 

Marchio
Architetto StrategyQuant

0

kleva

Cliente, bbp_partecipante, comunità, 15 risposte.

Visita il profilo

4 anni fa #240862

Ciao Mark,

Nel frattempo sono diventato un po' "specialista" nella programmazione delle mie estensioni SQX :). Ma purtroppo tutti i contenuti utili di "https://docs.strategyquant.com/api/*” è stato cancellato da voi dal sito www.

Inoltre, se dovesse essere obsoleto: Potreste fornire una copia zippata del suo contenuto precedente a persone come me? Sono sicuro che la maggior parte di esso (come la documentazione completa di "SQTime.*" per esempio) sarà utilizzabile fino ad oggi ... .

Molte grazie in anticipo per il vostro aiuto,

saluti: kleva.

 

 

0

Mark Fric

Amministratore, sq-ultimate, 2 risposte.

Visita il profilo

4 anni fa #240876

Salve,

Sono davvero contento che siate riusciti a estendere SQ X con una documentazione non completa.

Ecco il link alla nuova documentazione API generata: https://strategyquant.com/sqxapi/

Si noti che include solo le classi di base da usare in Snippets, non le classi complete di tutte le nostre librerie.

 

Fatemi sapere se vi manca qualcosa.

 

Mi sarebbe utile anche poter vedere il tipo di estensioni che state facendo, non so se ci sono dei "segreti commerciali", non volete condividere alcune delle vostre estensioni con altri utenti attraverso il nostro sito web Codebase?

 

Se non volete pubblicarle, forse potete inviarmele via e-mail - inviatemi un messaggio e vi comunicherò il mio indirizzo e-mail. Mi aiuterebbe a capire con cosa lavorate e di che tipo di supporto avete bisogno.

Marchio
Architetto StrategyQuant

0

kleva

Cliente, bbp_partecipante, comunità, 15 risposte.

Visita il profilo

4 anni fa #241110

Ciao Mark,

Mi dispiace per la risposta tardiva, sono stato qualche settimana fuori sede (e ho dimenticato di impostare il pulsante "notifica")... .

Grazie per il link alla nuova documentazione sulle API: È esattamente quello che stavo cercando :)!

Attualmente sono ancora uno "studente di SQX-Java". Ma sono sicuro che in seguito pubblicherò qualche estensione praticabile sotto "Codebase", se sarà terminata.

Per farvi capire meglio cosa sto facendo, ecco ad esempio un ciclo che sto utilizzando in un'estensione MM (simile a una martingala). Calcola l'"orderdayPipsPL" per il giorno PRIMA del giorno effettivo:

//—

orderdayPipsPL = 0; //quando viene richiamato MM, dobbiamo azzerarlo prima che il ciclo parta

for(int i=Strategia.Trader.getHistoryOrdersCount()-1; i>=0; i-)
{
order = Strategy.Trader.getHistoryOrder(i);

if(!OrderFunctions.identify(order, Strategy, Symbol, 0, MagicNumber, Comment)) continua;

if(!order.isFilledOrder()) continua; // ignora gli ordini in sospeso

se (order.isLong() || order.isShort())
{
orderTime = order.CloseTime;
se (order.isLong())
{
order.PipsPL = (float)Strategy.convertRealPriceToPips(Symbol, (order.ClosePrice - order.OpenPrice));
}
altrimenti se (order.isShort())
{
order.PipsPL = (float)Strategy.convertRealPriceToPips(Symbol, (order.OpenPrice - order.ClosePrice));
}
//—
if (orderTime >= todayStart && orderTime <= todayEnd) //siamo al giorno attuale
{
//non c'è niente da fare
}
altro
{
se (orderdayStart==0 && orderdayEnd==0)
{
orderdayStart = SQTime.correctDayStart(orderTime);
orderdayEnd = SQTime.correctDayEndMT(orderTime);
orderdayLots = order.Size;
}
if (orderTime >= orderdayStart && orderTime <= orderdayEnd) //siamo al giorno dell'ordine
{
orderdayPipsPL += order.PipsPL;
}
else if (orderdayPipsPL!=0) //ora siamo già prima del giorno dell'ordine
{
se (orderdayPipsPL<0)
{
absSL = Strategy.convertRealPriceToPips(Symbol, (order.OpenPrice - order.StopLoss));
se (absSL<0) absSL = -absSL;

fattore = -FattoreSL * orderdayPipsPL / absSL;
se (fattore<0) fattore = -fattore;
se (fattore<Fattore MinLotti) fattore = Fattore MinLotti;

tradeSize = orderdayLots * fattore;
pausa;
}
altrimenti se (orderdayPipsPL>0)
{
// nulla da calcolare
tradeSize = Math.min(LotsIfNoMM, MaxLots);
pausa;
}
altrimenti interrompere;
}
}
}
}

//—

0

Stai visualizzando 4 risposte - da 1 a 4 (di 4 totali)