Need a Python Script to filter huge files

I work on various messages received from server and want to write a python script that can sort messages with unique flag values and give me the output in a text file.

I get these messages in the form of .zcap file from server and I use an internal tool to filter:
Step 1) Zcap file to get security types,
Step 2) then filter each security types file that generate various exchanges files
Steps 3) lastly filter each exchange files to get message types files.

For eg: I filtered a .zcap file to get message types as -
BOND-----CVE----- MTR_BOND, MTFD_BOND, MTQ_BQUOTE, MTQ_MBBOQUOTE
BOND-----NYSE---- MTR_BOND, MTFD_BOND, MTQ_BQUOTE
BOND-----TSE--- MTR_BOND, MTFD_BOND, MTA_RECAP, MTT_TRADE, MTT_STATUS, MTA_CLOSE

Step 4) at present, I run a UNIX command on each message type that generates multiple text files of each unique flag value messages (for eg; MTR_BOND).
$ awk '/MTQ/,/Quote Condition/{a[i\+\+]=$0;if($0~/Flags:/){sub(":","",$2);fname=$2}if($0~/Quote Condition/){for(j=0;j<=i;j++)print a[j] > fname;i=0}}' MTA.txt

This is a very tedious job to run this command on each message type file (for eg; MTR_BOND) level, I want a python script that I run at Security Type level (for eg; BOND) .
Here I attach text file for BOND and its exchanges and message types. Please write a python script (preferably) to generate 1 text file for each message types with only 1 message of unique flag value.

I have attached the files with all the data but you can only open it in unix using 'cat' or 'less' command or in notepad ++
A sample message would look like:
MTQ_BQUOTE, Length: 49, Timestamp: 8:03:28.350
MsgKey: symbol: DD13B
Symbol: DD13B, hash 33314407
QS Symbol: DD13B.CB, market 12
Security Type: BOND (5)
Symbol Type: Bond.Share.Single.None
Session: US_Day (3)
Ticker Exchange: NYSE (7) => 7
Flags: x00000000
Bid: 10341, frac: 2, pure7 val: 103.41
Bid Size: 10
Ask: 10356, frac: 2, pure7 val: 103.56
Ask Size: 15
Quote Condition: x00

There are many messages like this in the attached files with flag values (9th line of the message) while there are some messages that do not have flag value as well (like MTR_BOND and MTFD_BOND).