Yes indeed, what you describe is quite possible using python,
It is pretty straightforward.
The similarity to Geodatabase Archiving is only superficial.
Geodatabase Archiving is performed on an enterprise relational database utilizing versioning.
What you are doing is very much simpler.
The date functions in python (for example, strftime) give
a great range of options for formatting the time stamp string
you would (likely) want to add to base shape file name.
Otherwise, it is basicaly finding and copying shapefiles....
In any event, one would want to build it as a custom tool rather than have a pre-built tool
with the pethora of options a general tool would need to cover all cases.
Are you running ArcSDE? As far as I know, FGDB and PGDB formats don't suport archiving/versioning.
In the interest of keeping things simple and straightforward (which is always a good idea), I don't see much wrong with what you are doing. That same copy/rename/repost stategy can be applied to FGDB, GRID, SHP, PGDB, SDE, whatever. I do it all the time - it's great.
It may be more "efficient" database/storage-wise to implement SDE enterprise archiving/versioning, but I know it isn't easier.
Also, by "shapefile" I think you mean ArcSDE featureclass, right?
I don't think you strictly need to script Archiving. As I understand it, it keeps track of changes to the Default version. I don't remember the specific details (the documentation has it though), but it adds a couple date fields that are sort of like "this feature looked like this from X to Y".
The Historical Markers are for marking specific events in time ("Subdivision Blah Built"). Depending on needs it might be nice to script those I suppose, but if I understand correctly, once Archiving is setup for a feature it will capture the changes regardless.