Tracer l'indicateur MACD
Cet exemple montre comment construire une timetable et tracer l'indicateur de convergence/divergence moyenne mobile (MACD). Le MACD est un indicateur de trading utilisé dans l'analyse technique des cours boursiers. Le MACD indique s'il faut acheter ou vendre une action, quand une condition de surachat ou de survente se produit et quand la fin d'une tendance pourrait se produire.
Lire les données
Le canal ThingSpeak 471839 contient des données financières différées pour Google (NASDAQ : GOOGL). Les données sont mises à jour une fois par jour. Les quatre premiers champs contiennent respectivement les cours d'ouverture, haut, bas et de clôture. Le champ cinq contient le volume quotidien du trading. Lisez les données du canal 471939 à l'aide de la fonction thingSpeakRead
.
stockTimeTable=thingSpeakRead(471839,'numDays',150,'outputFormat','TimeTable');
Générer les données MCAD et les croisements d'étiquettes
Lorsque le MACD et la ligne de signal viennent de se croiser et que la ligne MACD tombe en dessous de la ligne de la moyenne mobile, il est temps de vendre. Utilisez la fonction macd
pour construire la ligne MACD et les données de moyenne mobile ou de ligne de signal. Scannez ensuite les points de données pour rechercher les points où les lignes se croisent et enregistrez ces points dans un tableau pour le traçage.
[MACDLine, signalLine]= macd(stockTimeTable); index=26; crossUp=[]; crossDown=[]; while (index<height(stockTimeTable)) if and(MACDLine.Close(index)>signalLine.Close(index),MACDLine.Close(index-1) < signalLine.Close(index-1)) crossUp=[crossUp index]; end if and(MACDLine.Close(index)<signalLine.Close(index),MACDLine.Close(index-1) > signalLine.Close(index-1)) crossDown=[crossDown index]; end index=index+1; end
Tracer le MACD et les indicateurs de signal
Utilisez la fonction plot
pour tracer le MACD pour Google. Ajoutez des étiquettes de croisement de lignes à l'aide de la fonction text
.
plot(MACDLine.Time,MACDLine.Close,'r+-',signalLine.Time,signalLine.Close, 'b--'); legend('MACD Line','Nine Per MA') title('MACD for GOOG') ylabel("Price Averages"); hold; text(MACDLine.Time(crossUp),MACDLine.Close(crossUp),'B'); text(MACDLine.Time(crossDown),MACDLine.Close(crossDown),'S');
Current plot held
Le graphique montre le MACD pour Google. La ligne MACD a traversé la ligne de signal à plusieurs endroits, indiquant qu'il existait des opportunités commerciales potentiellement rentables. Étant donné que le tracé est généré à partir de données temps réel, votre tracé est différent de l'exemple présenté ici.
Voir aussi
Fonctions
thingSpeakRead
|macd
(Financial Toolbox) |text
(MATLAB)