Creating secure VPN tunnel between two MikroTik routers using IPsec?

I’m looking for guidance on how to create a secure VPN tunnel between two MikroTik routers using IPsec. I want to establish a private and encrypted communication channel between the two routers to ensure the confidentiality and integrity of the data transmitted. Can someone please provide step-by-step instructions or a configuration example on how to set up the IPsec tunnel? Additionally, I would appreciate any best practices or considerations for optimizing the VPN performance and ensuring compatibility with other network configurations. Thank you in advance for your assistance!

https://mikrotik.com/consultants

An example of a GRE tunnel can be found here: https://help.mikrotik.com/docs/display/ROS/GRE
When in addition to what is written there you also configure the ipsec-secret (use some random string which is the same on each side) you have your secure VPN tunnel using IPsec.
For this to work best you need a static address on each side, the MikroTik router is directly connected to internet (not via some other router).
When you cannot have that, it is more complicated.

The easiest way is to configure an EoIP tunnel with IPSEC on top of the two public IP addresses /both sides/for transport.

… but that is a BAD way of doing it.
Use GRE or IPIP if at all possible.