Le meilleur moyen de ne pas dépendre des fluctuations de monnaie est d'avoir un compte de type Revolut. Tu recharges le compte quand le rand est au plus bas, puis tu effectues tes achats au fur et à mesure avec ton compte.
Après le voyage, tu peux les ré-échanger au moment où le taux t'est favorable.
J'ai commencé à m'intéresser à ce "problème" cet été quand j'ai annulé un hôtel (2 nuitées) réservé à 200 € sur booking et qu'on ne m'a remboursé que 180 € ! L'hôtel a été réservé au moment où le rand avait "chuté" à 18 (1€=18 ZAR), puis ils m'ont remboursé quand il avait repris du poil de la bête.
Du coup, j'ai décidé de recharger de plusieurs dizaines de milliers de ZAR sur la carte Revolut à un taux de 17,5 bien plus intéressant qu'il ne l'est aujourd'hui (à peine au-dessus de 16).
Pour effectuer un achat en ZAR (exemple les résas sur sanparks), il suffit de rendre le ZAR "actif" sur le compte Revolut et de payer via le compte bancaire Revolut dédié.
Simplissime, en utilisant le taux favorable de cet été et sans frais bancaire, si ce n'est que x milliers d'euros restent "bloqués" sur un compte sans travailler. Cette perte minime est largement négligeable par rapport au gain sur les taux de change.