Risposta

Salvataggio dei risultati della strategia WFM in .sqx

2 risposte

Lorena Rangel

Abbonato, bbp_partecipante, cliente, comunità, sq-ultimate, 8 risposte.

Visita il profilo

2 settimane fa #290714

Dopo aver eseguito Optimizer (o Task Optimize Strategies nel flusso di lavoro) e aver cercato di salvare il risultato, non ottengo solo il risultato WFM, ma anche la Permutazione dei parametri di sistema e il profilo di ottimizzazione vengono eseguiti e salvati. Voglio salvare solo il miglior risultato WFM. Come posso fare?

0

Lorena Rangel

Abbonato, bbp_partecipante, cliente, comunità, sq-ultimate, 8 risposte.

Visita il profilo

2 settimane fa #290720

Ho scritto un codice ma il simbolo e il timeframe sono nulli. Quando provo a utilizzare il risultato su portfolio master, ottengo un errore.

 

Pacchetto SQ.CustomAnalysis;

importare com.strategyquant.lib.*;

importare java.util.ArrayList;
importare java.util.List;

importare com.strategyquant.datalib.*;
importare com.strategyquant.tradinglib.*;

public class SaveBestWalkForwardMatrixResult extends CustomAnalysisMethod {

//————————————————————————
//————————————————————————
//————————————————————————

/**
* Impostare qui il tipo di frammento di CA: può essere usato come:
* - filtro della strategia - richiama il metodo filterStrategy() per una strategia
* - processore della banca dati - chiamerà processDatabank() per tutte le strategie nella banca dati
*
* Deselezionare quello che si desidera utilizzare.
*/
public SaveBestWalkForwardMatrixResult() {
super("SaveBestWalkForwardMatrixResult", TYPE_PROCESS_DATABANK);
}

@Override
public ArrayList processDatabank(String project, String task, String databankName, ArrayList databankRG) throws Exception {

for (ResultsGroup result : databankRG) {
prova {
// Rimuove il profilo di ottimizzazione
result.setOptimizationProfile(null);

// Ottenere le chiavi su cui lavorare
List keysSnapshot = new ArrayList(result.getResultKeys());
String bestWFMResultKey = result.getBestWFResultKey();
String mainResultsKey = result.getMainResultKey();

// Ottiene il miglior risultato e le impostazioni del WFM
Risultato bestWFMResult = result.subResult(bestWFMResultKey);
SettingsMap bestWFMSettingsMap = bestWFMResult.getSettings();

// Rimuove tutti i risultati delle simulazioni wfm
for (String currentKey : keysSnapshot) {
if (!currentKey.equals(bestWFMResultKey) && !currentKey.equals(mainResultsKey)) {
result.removeSubresult(currentKey, true);
}
}

// Rimuove il WFM originale per evitare duplicazioni.
String originalWFResult = result.getOriginalWFResultKey();
result.removeSubresult(originalWFResult, true);

// Rimuove il risultato principale per mantenere solo il miglior WF
result.removeSubresult(mainResultsKey, true);
} catch (Exception e) {
lanciare e;
}
}

restituire databankRG;
}
}

0

tomas262

Amministratore, sq-ultimate, 2 risposte.

Visita il profilo

1 settimana fa #291157

Salve,

Abbiamo in programma di pubblicare presto un tutorial su come lavorare con i risultati di WF attraverso l'analisi personalizzata.

0

Stai visualizzando 2 risposte - da 1 al 2 (di 2 totali)