I would try at all costs to not have to move the data, but instead, just have dynamic references. This way you run the snapshot process one time and it should be much lighter on performance than forcing all of the data to move and cause Anaplan to have to re-calculate everything.
Here is an idea. I obviously don't have all of the details so hopefully, this will spark your imagination a little!
Instead of having my Snapshot list of Lag 1, Lag 2... etc. I am making my snapshot list be related to the current week of the model. In this case, I am using the current date to calculate the current week. Let us assume that the snapshot gets ran every Friday in this example.
Name of the list items are the Date (Fridays). The week number becomes the code.
From there, I have a module where I am able to snapshot my data into: (In this example my data is identical from each snapshot version)
Now I need to be able to reference these snapshots to bring into my final formulas, so I need to be able to calculate what week should be Lag 1, Lag 2, etc.
As you can see I am driving these snapshot items formulaically since I can calculate them based on the current week, thus, Each week I get a new snapshot and my Current week updates, so there is no additional maintenance to worry about.
Finally, in the final reference module You just have a line for each Lag, and Lookup the reference module we just covered.
I hope this gives you some ideas! Let me know if you have additional questions, or if this does not meet your needs.