Second
Second renvoie les secondes écoulées dans la minute, de 0 à 59, pour l'horodatage de la bougie en cours en ProBuilder. Pertinent uniquement sur les graphiques intraday basés sur les secondes.
Syntaxe
SecondLe mot-clé ne prend aucun paramètre. Un indice d'historique entre crochets lit les bars antérieures, donc Second[1] donne la composante des secondes de l'horodatage du bar précédent.
Comment ça marche
Chaque bar porte un horodatage, et Second en isole le champ des secondes. Le résultat est toujours un entier compris entre 0 et 59. Sur un graphique de 15 secondes, les valeurs des bars consécutives défilent selon 15, 30, 45, 0, tandis que sur tout graphique dont l'unité de temps est d'une minute ou plus, la valeur est 0 sur chaque bar, car de telles bars clôturent toujours exactement sur une limite de minute.
La précision du résultat dépend donc entièrement de la granularité du graphique. Les scripts qui s'appuient sur Second n'ont un comportement pertinent que sur les graphiques intraday basés sur les secondes, là où le timing à la seconde près compte, par exemple autour des publications de nouvelles programmées.
Second décrit l'horodatage du bar, qui correspond à la clôture du bar. La composante secondes de l'ouverture du bar est disponible via OpenSecond, et le champ des secondes de l'horloge via CurrentSecond. Combiné à Hour et Minute, le mot-clé peut reconstruire une valeur HHMMSS complète à partir de ses éléments.
Exemples
Exemple 1, Lecture du champ des secondes de chaque bar (Indicateur)
// Store the seconds portion of the current bar's timestamp
mySecond = Second
RETURN mySecondL'indicateur trace la composante des secondes bar par bar, ce qui est un moyen rapide de vérifier la granularité du graphique ou de déboguer une logique basée sur le temps.
Exemple 2, Reconstruction d'une valeur HHMMSS complète (Indicateur)
// Rebuild an HHMMSS time value from its components
fullTime = Hour * 10000 + Minute * 100 + Second
RETURN fullTimeMultiplier chaque composante pour la placer à sa position décimale reconstitue le même format composite utilisé par TIME, utile lorsque les parties sont d'abord manipulées séparément.
Exemple 3, Agir uniquement sur les limites de minute (ProOrder)
// On a 15-second chart, act only on bars closing exactly on the minute
IF Second = 0 AND NOT OnMarket THEN
IF close > Average[20](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIF
ENDIF
SET STOP PLOSS 20Sur un graphique en secondes, la condition Second = 0 sélectionne un bar par minute, ce qui réduit la fréquence des signaux sans changer l'unité de temps du graphique.
Erreurs et pièges courants
- Toujours zéro sur les graphiques en minutes et au-delà. Sur les graphiques en 1 minute, en heure ou en journalier, Second renvoie 0 sur chaque bar. Une condition telle que
Second = 30ne peut alors jamais être vrai, et le bloc environnant devient du code mort. - Horodatage de la bar contre heure de l'horloge. Second lit l'horodatage de la bar, pas l'heure courante. Pour l'horloge en temps réel,
CurrentSecondest le mot-clé correct ; les deux ne coïncident qu'au moment où un bar se clôture. - Clôture contre ouverture. L'horodatage du bar correspond à la clôture du bar. Le champ des secondes de l'instant d'ouverture nécessite
OpenSecond, et les deux diffèrent de la durée de la bar sur les graphiques en secondes.
Instructions liées
CurrentSecond, champ des secondes de l'heure courante de l'horloge.OpenSecond, composante des secondes de l'heure d'ouverture de la bar.Minute, composante des minutes de l'horodatage de la bar.Hour, composante des heures de l'horodatage de la bar.TIME, heure de clôture complète d'un bar au format HHMMSS.Timestamp, horodatage Unix de la clôture du bar en secondes.