Interestingly, this does not work with Investment Accounts (to change Accounts). The Account is not available in the context menu that pops up. I've been wondering how to do this in case I transfer assets to another custodian without liquidating them.
You are correct. Moving securities between accounts is not doable through the UI.
The unfortunate workaround is to sellxfr the security at its cost basis, sending the resulting funds to the other investment account. Then use the funds to buy it into the other account, again at it's cost basis. Doing so, of course, breaks the performance history of the asset.
Only when transferring all securities in an account can you preserve the performance history. You do so by simply changing the particulars of the investment account to reflect the new brokerage. You can make an annotation of the event in the comments section of the account's properties form.
As it stands there is no way to move (or transfer) investment holding from one Investment account to another, it is necessary to do a sell at cost price, move the funds and perform a buy at the same price in the new account. Technically I know this is not correct and is not what is really happening but there is no way around it in the software.
This has been an often requested feature enhancement.
I found an extension on the developer website called move_txns.py but it didn't work. I do not code (anymore - not since college) but figured one could just move the account name in the database. I want to move securities to a new Brokerage, but preserve the history as you say.