Thank you very much for you answer
Exactly the same -- as in checking the same pixel?
No, in fact theres is one macro (that you call child / subroutine) that is about to looking for the change of state of a button into orange (orange pixel), ant the other that is looking for the change of a number into green (green pixel). So it's different pixel that are monitored.
Both child macro are independent and trigger other different macros to complete task when recognition (orange or green) is done.
As you can see in my writing I made the child macro to cancel themselves when recognition is done to preserve CPU and RAM (I can also make those child macro to cancel one another If needed when recognition, because if green is recognized then I don't need the orange recognition anymore and conversely)
The main macro is just here to launch the gaming app and child macros (orange and green recognition) to react to its behavior the way I want.
It isn't what most people would call a "loop" -- it's a side-effect of the "Retry" action when used in a "child" macro or subroutine. That "child" or subroutine is itself considered to be the loop and it starts again from the top
Thank you very much for those explanations, now I understand why my writing was finally kind of "right" 
The more usual way to do what you are doing would be to "Pause Until" the pixel is the colour you want, then do the thing you've been waiting for. It's generally more efficient, though there's probably not much difference in this case because you have no variables and the child macro is so short
Yes I don't have any variable here, I can still make a try with the "Pause until"
The "trick" would be to set the child macros to run "Asynchronously" in the parent macro's calling action.
Yes you understand what I'm looking for now.
I don't want those child macro to be called in chronological order (for example 1/ orange child macro 2/ green child macro) in the parent macro, as it will result in first waiting for the orange child macro to complete orange recognition and THEN launching green recognition, while I need them to run IN THE SAME TIME to react accordingly to game change (what you called asynchronously)
So, to sum it up, can someone tell me how to launch 2 macros (or to be more precise 2 child macro from 1 parent macro) in the same time ? (to have both green and orange pixel recognition working in the same time)
I add that there isn't any unintended consequences (as your mentioned) because I've made several test launching them manually quite in the same time triggering their respective "hotkeys" and it works fine.
(attached documents : writing of the orange pixel recognition child macro - green is the same -, and how they are called from the parent macro)